- 封装:就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节。
- 将类的某些信息隐藏在类的内部,不允许外部程序进行直接的访问调用;
- 通过类提供的方法来实现对隐藏信息的操作和访问;
- 隐藏对象的信息;
- 留出访问的对外接口。
- 继承:就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。父类私有属性(private)是不能被子类继承的。
- 只支持单继承;
- 子类可重写覆盖父类的方法;
- 提高了代码复用性;
- 多态:同一个行为具有多个不同表现形式或形态的能力;
- 消除类型之间的耦合关系,实现低耦合;
- 灵活性,可扩充性,可替换性。
- 体现形式:继承,父类引用指向子类,重写。
- 重写和重载:
- 重写:是子类对父类的允许访问的方法的实现过程进行重新编写,返回值和形参都不能改变。
- 参数列表必须与被重写方法相同;
- 访问权限不能比父类中被重写的方法的访问权限更低(public->protected>default>private);
- 父类成员的方法只能被它的子类重写;
- 被final 修饰的方法不能被重写;
- 构造方法不能被重写。
- 重载:是指在一个类中,方法名一致,而参数不同的方法,返回类型可相同也可不同。每个重载的方法(或构造函数)都必须有一个独一无二的参数类型列表。最常见的就是构造器的重载。
- 被重载的方法必须改变参数列表(参数个数或类型不一样);
- 被重载的方法可改变返回类型;
- 被重载的方法可以改变改变访问修饰符。
- 重写:是子类对父类的允许访问的方法的实现过程进行重新编写,返回值和形参都不能改变。
- 泛型
- Java泛型提供了编译时类型安全检测机制,在编译时检测到非法的类型。其本质是参数化类型。就是将类型由原来的具体的类型参数化,类似于方法中的变量参数。在步创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型。
- Java的泛型是伪泛型,因为Java在编译期间,所有的泛型信息都会被檫掉,也就是通过所说的JVM类型檫除机制。在运行期间,JVM是不知道泛型信息的。
- 泛型变量的使用,会是编译之前检查。类型检查是针对引用的,用这个引用调用泛型方法,就会对这个引用调用的方法进行类型检测,而无关它真正引用的对象。new 出来的对象只是在内存重开辟了一个存储空间,可以存储任何类型对象,而真正设计类型检查的是它的引用,实质上是使用它引用来调用它的方法。
Java基础01-封装、继承、多态、重载和重写、泛型
于 2023-09-22 17:43:39 首次发布