day08
类与对象小结
-
类与对象
- 类是一个模板:抽象
- 对象是一个实例:具体
-
方法:定义和调用
-
对象的引用
- 引用类型:八大基本类型
- 对象是用过引用来操作的 :栈===>堆
-
属性:字段field 成员变量
-
默认初始化:
- 数字: 0、0.0
- char: u0000
- boolean:false
- 引用: null
修饰符 + 属性类型 + 属性名 = 属性值
-
-
对象的创建和使用
- 必须使用new关键字来创造对象,构造器
- 对象的属性
- 对象的方法
-
类
- 静态的属性(属性)
- 动态的行为(方法)
Java三大特性
封装、继承、多态
封装
- 程序要求高内聚低耦合:高内聚是指类的内部数据操作细节自己完成,不允许外部干涉,低耦合是指仅暴露少量的方法给外部使用
- 封装(数据的隐藏)
- 通常应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,称为信息隐藏
- 要点:属性私有,get/set
- 意义
- 提高程序安全性
- 隐藏代码的实现细节
- 统一接口
- 增加系统可维护性
继承
- 继承本质是对某一批类的抽象,从而实现对现实世界更好的建模
- extends的意思是“扩展”。子类是父类的扩展
- JAVA中类只有单继承,没有多继承
- 继承是类和类之间的一种关系。除此之外,类和类之间的关系还有依赖、组合、聚合等
- 继承关系的两个类,一个为子类(派生类)一个为父类(基类),子类继承父类,使用关键字extends来表示
- 子类和父类之间从意义上具有“is a”的关系
- 子类继承了父类,则子类会具有父类的全部方法(修饰符为public)
- Ctrl+H 查看类的关系
- object类 所有类都直接或间接继承object类
- super
- 在调用子类构造器是会先调用父类构造器,而此类操作的代码是隐藏的,同调用无参构造器一样
- super调用父类数据方法,必须在子类构造器的第一行(this也一样)
- 注意点:
- 调用父类构造方法且在构造方法的第一个
- super必须只能出现在子类的方法或者构造方法中
- super和this不能同时调用构造方法
- 与this对比:
- 代表的对象不同:
- this:本身调用者的对象
- super:代表父类对象的引用
- 前提
- this:没有继承也可以使用
- super:只能在继承条件下才可以使用
- 构造方法
- this(); 本类的构造
- super(); 父类的构造
- 代表的对象不同:
- 方法重写
- 重写都是方法的重写,与属性无关
- 静态方法和非静态方法区别很大
- 非静态:重写
- 重写修饰词需为public
- 总结:
- 需要有继承关系:子类重写父类的方法
- 方法名必须相同
- 参数列表必须相同
- 修饰符:范围可以扩大但不能缩小:public>Protected>Default>private (父类小,子类大)
- 抛出的异常:范围可以被缩小但不能扩大
- 子类方法和父类必须要一致,方法体不同
- 为什么要重写
- 父类功能子类不一定需要,或不一定满足
- alt+insert: override
- 需要有继承关系:子类重写父类的方法

浙公网安备 33010602011771号