java继承的原理,怎么理解java继承
目录
1.代码块初始化2 .受保护的关键字3 .最终关键字:4.Java允许的继承方法。本文延续上一篇,还是从《继承》中的细节开始?
00-1010代码块的定义和使用前面已经介绍过了,这里不再赘述。我们关心的是运行时父类和子类中代码块的顺序。
首先,在父类和子类中添加代码块,如下所示:
//父类{System.out.println(父类实例代码块);} static {System.out.println(父类静态代码块);} public plant(){ system . out . println(父类构造函数);}//子类{System.out.println(子类实例代码块);}static {System.out.println(子类静态代码块);} public tree(){ system . out . println(子类构造函数);}我们在main方法中实例化子类对象,然后看看结果:
首先执行的仍然是静态代码块,然后是父类的实例代码块和构造方法,最后是子类的实例代码块和构造方法。
因为静态代码块只执行一次,如果子类对象被再次实例化,父类和子类的静态代码块就不会被再次执行。
在00-1010之前,还有一个受保护的访问限定符。这里,把这个洞填上。procted在包访问权限的基础上多了一个权限:不同包中的子类可以访问父类的成员。
假设Plant和Tree在两个包中,仍然可以通过使用super in Tree来访问Plant中受保护的成员。
注意:父类必须用public修饰,否则访问权限不够,不同包的两个类根本不能形成继承关系。
所有四个访问修饰符都已完成。这里有一个总结:
访问范围privatedefaultprotectedpublic同一包中的同一个类同一包中的不同类不同包中的子类不同包中的非子类
1.代码块初始化
final关键字也用于修改类、方法和变量,其功能如下:
修改变量:变成常量,不能修改。
装饰方法:不能被覆盖。
类:不能作为父类被其他类继承。
00-1010单一继承:A继承B
多层继承:A继承B,B继承C,C继承d。
不同的类继承同一个父类:A继承B,C也继承B。
但是Java不允许一个类继承多个父类(也就是C中的多重继承)。
Java继承的内容结束,后面是多态内容。目标
这就是这篇关于Java继承从简单到深入的文章。关于Java继承的更多信息,请搜索以前关于流行IT的文章或者继续浏览下面的相关文章。我希望你将来能支持流行它!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。