环境:Windows10 + idea2021 +jdk17
才疏学浅,欢迎批评指正
目录
一、继承的零碎知识
1、继承特点:
子类能继承父类中所有非私有成员(成员变量、成员方法),子类还可以重新定义、追加新的成员
2、new子类对象时:
new 出来的对象是由子类、父类两张设计图共同创建出来的
(即:在对内存中开辟了新的空间,空间中涵盖了父类子类的全部内容,包括父类的私有成员(只不过私有父类成员的不能被对象访问))
new 出来的对象可以访问子类和父类中所有非私有的成员
3、格式:
子类 extends 父类
4、注意:
1、Java是支持单继承,不支持多多继承,但支持多层继承。(但多层继承会是代码的耦合度变高可移植性变差)
2、任何一个类默认是直接或是间接继承Object类
二、权限修饰符
三、重写
当子类觉得父类中的某个方法无法满足自己的需求的时候,子类可以重写一个方法声明一模一样的方法,去覆盖父类的方法,这就是方法的重写
1、注意
1、重写后在访问会遵循就近原则。(先在子类的局部范围内寻找,再在子类的成员范围内寻找,然后再父类成员范围内寻找,仍没找到则报错)
2、再重写的方法的上面加上@Override,它可以指定Java编译器,检查我们重写的方法的格式是否正确,代码可读性也会更好
3、父类私有方法和静态方法不能被重写
4、重写方法的返回值类型小于等于原方法、权限修饰符的范围大于等于原方法
(大多数情况下子类重写父类方法,方法声明保持与父类一致即可)
2、养成重写toString()方法的习惯
快捷键:右键 选择Generate 在选择里面的toString()
四、零碎
1、一些术语:
访问变量、调用方法