Java之面向对象
-
目的:提高代码复用性。
-
作用:子类一旦继承父类,有权使用父类中的成员,可以在子类中定义子类独有内容
-
定义:子类 extends 父类
-
子类|实体类:根据一系列对象抽取共性所定义的实体类,子类是派生类 父类 : 子类的共性,是基类,超类
-
特点 :
-
单继承机制 ,一个子类只能继承一个父类,但是一个父类可以存在多个子类
-
修饰类只能使用public|default(默认可以不写)
-
开闭原则:面试对象设计原则之一 : 对修改关闭,对扩展开放
-
-
单继承的优点 : 简单
-
单继承的缺点 : 不便于后期维护
访问权限修饰符
-
注意:
-
都是成员修饰符,只能修饰成员,不能修饰局部
-
能够修饰类的 : public | default
-
Protected修饰的成员在不同包下的子类中,需要通过继承关系使用
-
最常用的两种权限 : public|private
-
super 与 this 之间的区别
-
this指代当前new对象
-
本类构造器的首行调用本类中的其他构造器this(参数列表)
-
区分局部与成员同名问题 默认就近原则,通过this.调用成员
-
-
super 指代父类对象
-
子类构造器的首行,通过super(参数)调用父类中的指定构造器 如果没有显示通过super(参数)调用,默认调用父类的空构造
-
区分子父类中同名成员 如果不存在同名问题 : 可以省略super.调用父类成员 如果存在子父类同名成员问题,同名局部问题 :
-
默认就近原则
-
有局部找局部
-
通过this.找子类成员
-
通过super.找父类成员
-
-
-
注意:
-
子父类继承关系下 : 创建子类对象的时候,其实会先父类后子类
-
不能在构造器的首行同时使用this(参数)与super(参数)
-
this与super都不能使用在静态方法中
-
重写与重载之间的区别
都是方法的特性
-
重载的实现条件 :
-
一个类中的多个方法
-
方法名相同
-
参数列表不同|方法签名不同
-
-
重写的实现条件:
-
两个类
-
继承|实现
-
方法签名完全相同
-
-
重写的需求 :
-
当子类从父类中继承的功能不满意的时候,可以在子类对从父类中继承的功能重新实现
-
-
调用使用 :
-
如果子类中没有重写,调用父类的,父类没有报错
-
如果子类存在重写方法,调用子类中重写后的方法,对父类的方法进行屏蔽
-
-
检测是否为重写方法 :
-
idea行号后面的位置出现o向上箭头
-
在重写方法上添加注解 @Override
-
-
不能被重写的方法 :
-
被private修饰的方法不能被重写,能被子类继承,但是无权使用
-
被final修饰的方法不能被重写
-
被static修饰的方法不能被重写,可以被继承不能被重写 如果子类中出现与父类中静态方法同名的方法,要求子类中这个同名的方法也被static修饰
-
final 最终的
-
被final修饰的变量为常量
-
被final修饰的方法不能被重写
-
被final修饰的类不能被继承
一系列实体类的统称,定义规范 :
-
类是公共的
-
至少一个空构造
-
属性私有化
-