全部
技术
PHP
MySQL
前端
Linux
JAVA
工具
纪念日计算器
邮记星
个人记账
笔记侠
历史上的今天
生日密码
生日书
生日密码
生日花语
博古通今
三十六计
鬼谷子
笑林广记
本草纲目
山海经
唐诗宋词
宋词300首
唐诗300首
退出
登录
注册
编辑文章
选择分类
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()不可能被同时调用,子类执行自己构造方法前,以前先执行父类构造,为父类初始化
保存文章