Java面向对象编程:this关键字与抽象封装

需积分: 35 3 下载量 147 浏览量 更新于2024-07-13 收藏 2.42MB PPT 举报
"this的用法-抽象和封装PPT" 在编程中,"this"关键字是面向对象语言(如Java)中的一个特殊关键字,它在类的实例方法中用来引用当前对象。本PPT主要讲解了"this"的四种常见用法以及抽象和封装的概念在编程中的应用。 1. **调用属性**: 当类中有多个同名属性时,"this"关键字用于区分当前对象的不同属性。例如,`this.health = 100;`表示将健康值设置为100,这里的`this`指代当前的对象实例。 2. **调用方法**: 类中可能存在重名的方法,"this"可以用来调用当前对象的方法,避免混淆。例如,`this.print();`表示调用当前对象的`print()`方法。 3. **调用构造方法**: 在构造方法中,"this"可以用来调用同一类中的其他构造方法。`this()`必须作为构造方法内的第一条语句,且只能出现一次。例如,`this("小黑",100,100,"雄");`调用了带有四个参数的构造方法,传入相应的值。 4. **初始化对象**: 如果构造方法需要通过其他对象的属性来初始化当前对象,"this"也可以用于传递参数。这里的`this("小黑",100,100,"雄")`可能是调用了一个带有字符串名字、两个整数(可能代表年龄和体重)和一个性别标识的构造方法。 **抽象和封装**是面向对象编程的两大核心概念: - **抽象**:抽象是对现实世界中问题领域的简化表示,它关注的是对象的主要特征和行为,忽略不必要的细节。在编程中,抽象通常通过定义类来实现,类是具有共同属性和行为的对象模板。 - **封装**:封装是隐藏对象的内部细节,只暴露有限的接口供外界交互。通过封装,我们可以保护数据免受不恰当的访问,提高代码的安全性和可维护性。在Java中,通过访问修饰符(如private, public等)实现封装,限制类的成员对外部世界的可见性。 学习这门课程的目标是掌握面向对象的基本思想和实践技巧,包括: - 使用Java编写面向对象的程序。 - 使用集合存储和操作对象。 - 使用异常处理机制编写健壮的程序。 - 通过JDBC与数据库进行交互。 - 处理XML文件。 - 熟练运用Oracle数据库进行数据操作。 课程中,学生将通过实际的电子宠物系统项目,学习如何设计和实现面向对象的程序。这个项目包括主人登录、领养宠物、喂食、游戏、看病等功能,从而巩固抽象和封装的概念,并通过实际操作加深理解。 此外,课程还涉及其他相关技术,如C#, JavaScript, T-SQL等,以及项目管理和就业技能,旨在培养学生全面的IT技能,满足目标岗位的要求。在预习检查部分,学生需要思考如何从现实世界抽象出类,理解构造方法的特性和方法重载,以及如何实现类的封装等基础概念。通过这些学习,学生将能够掌握面向对象设计的基本步骤,成为熟练的Java程序员。
2013-07-17 上传
1.如何抽象出类 1.1 找简单名词 ----------发现类 1.2 找修饰性名词或形容词 ---------发现类的属性 1.3 找动词 ------------发现类的方法 1.4 事不关几,高高挂起 ---------------类的方法和属性只放需要的 1.5 谁最清楚,方法就放在这个类中 --------类的方法发现及放置 2.构造方法 constructor 2.1作用 对象初始化, 通俗地说就是给某些或全部属性赋初值 2.2特点 与类名相同,没有返回值 2.3 如果一个类没有写构造方法,系统会自动添加一个无参的空的构造方法 public Dog(){} 3.静态常量 static final 3.1.1 final 可以修饰类, 方法 , 变量 3.1.2 final 修饰变量的话说明这个变量是常量 3.2.1 static 可以修饰方法和变量 3.2.2 static 修饰变量的话说明这个变量是类变量 3.2.3 static变量(类变量) 用 类名.变量 或用 对象名.变量名 调用 3.2.4 实例变量 只能用 对象名.变量名调用 4.方法重载 overload 一个类中的几个方法名相同,参数列表不同 的情况 (部分内容还要和overwrite 对照讲解) 4.1 方法名相同,参数列表不同 4.2 与访问修饰符和返回值无关 5.封装 encapsulation (private, friendly, protected, public) 5.1 属性私有,通过getXXX()或 setXXX()方法来取值或赋值,在setXXX()方法中添加 代码进行控制 5.2 6.this 表示对象本身(部分内容还要和后面的super对照讲解) 7.八种原生数据类型 作为属性变量的时候 系统会自动赋初值,具体如下: byte 0 short 0 int 0 long 0 float 0.0 double 0.0 boolean false char 空格