立刻有
全部
技术
PHP
MySQL
前端
Linux
JAVA
退出
编辑文章
选择分类
PHP
MySQL
前端
Linux
Java
工具
选择专栏
设计模式
java基础
Angular学习
Java面试题
描述:
java 继承概念
封面图上传 :
+
点击上传图片
### 继承 - 子类可以直接将父类的操作继续使用,属于代码复用 - 子类可以继续扩充属于自己的标准。 #### 继承的限制 - Java不允许多继承(即一个子类不可以继承多个父类),但是允许多层继承,即 **A extend B C extend B** - 对应所用的私有操作属于隐式继承(即不能被直接使用),所有非私有操作属于显示继承 如下代码:其中name属性声明为private,B类并没有写任何属性,但是调用b.getName()可以打印出bobo,说明B是继承了A的私有属性,但是**不能通过b.name来直接访问** ```java class A{ private String name; public void setName(String name){ this.name = name; } public String getName(){ return this.name; } } class B extends A{ } public class TestExtend{ public static void main(String[] arg){ B b = new B(); b.setName("bobo"); System.out.println(b.getName());//结果:bobo } } ``` - 子类调用构造前,一定会调用父类构造(类似现有父亲才有儿子),相对于子类构造而言,相当于默认在构造里面调用了**super()**,当父类没有无参构造方法是,就需要手动调用父类的有参构造方法 - super()和this()不可能被同时调用,子类执行自己构造方法前,以前先执行父类构造,为父类初始化
保存文章