1. 封装
- 步骤
- 属性私有化
- 提供getter、setter方法
- 在setter方法中添加控制语句
- 好处
- 提高代码复用性
- 提高代码安全性
- 方便修改
2. 继承
- java中的类可以单继承和多重继承
- Object类是所有类的直接或间接父类
- 子类可以继承父类的 成员变量、成员方法
- 父类的构造方法不能继承
- 理论上,任何两个类之间都可以进行继承,但是事实上继承需要满足is - a的关系
3. 多态
- 向上转型
// 父类引用子类对象
父类类型 引用名 = new 子类构造器(参数值);
父类引用中可以访问哪些内容
- 父类中定义的成员变量,成员方法
- 子类继承父类的重写后的方法
- 向下转型
// (子类类型)父类引用;
// 一般不推荐使用 会报一个异常 java.lang.ClassCastException;
// instanceof 关键词用来判断能否转换
引用名 instanceof 类型
-
多态
-
概念
同一个父类引用不同的对象执行相同的方法得到不同的结果
-
前提
- 必须要有继承关系
- 必须要有方法的重写
- 父类类型 引用子类对象
-
优点
- 易维护,易拓展
- 使程序满足开闭原则
-
多态表现
- 父类数类型组存入子类对象
- 父类返回值类型返回子类对象
- 父类类型形参传入子类对象值
-
4. 访问修饰符
本类 | 同包子类 | 不同包子类 | 不同包非子类 | |
---|---|---|---|---|
public | √ | √ | √ | √ |
protected | √ | √ | √ | |
default | √ | √ | ||
private | √ |
注意事项:
1. 子类不能继承父类的构造方法,但是子类对象创建时,必须先调用父类的构造方法
2. 在子类构造器中,第一行调用父类的构造方法