继承
(1)单继承:
一个子类只能直接有一个父类
(2)多继承:
一个子类可以有多个直接父类(JAVA中不支持多继承),不直接支持多继承是因为多个父类中可能有相同的成员,会产生不确定性。
(3)JAVA中支持多层继承(多重继承):C继承B,B继承A。
(4)当本类的成员与局部变量同名时用this区分。{this代表父类}
(5)当子类和父类中的成员变量同名时用super区分父类。{super代表父类}
(6)this和super的区别:
this:代表一个本类对象的引用。
super:代表一个父类空间。
(7)当子类和父类中出现成员函数一模一样(返回值,参数列表,函数名都相同)的情况,会运行子类的函数,这种现象称为覆盖。
(8)子类方法覆盖父类方法时,子类权限必须要大于等于父类权限。
(9)什么时候使用覆盖?
当对一个类进行子类的扩展时,子类需要保留父的声明,但是要定义该功能特有内容时就使用覆盖方法完成。
(10)子类的初始化过程:
子类中所有的构造函数都会默认访问父类中的空参数的构造函数。
(11)子类在使用构造函数时必须访问父类中的空参数构造函数,如果父类中没有定义空参数的构造函数,那么子类必须使用super()语句明确要调用父类中的哪个构造函数。且super()语句必须定义在子类构造函数的第一行。
(12)子类构造函数中如果使用this调用了本类构造函数时,那么super就没有了,因为super和this都只能定义在第一行。所以只能有一个,但是可以保证的是,子类中肯定会有其他的构造函数访问父类的构造函数。
(13)final:
*final是一个修饰符,可以修饰类,方法,变量。
*final修饰的类不可以被继承。
*final修饰的方法不可以被覆盖。
*final修饰的变量时一个常量,只能赋值一次。
*
java单继承多实现多实现 java中单继承还是多继承
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章