文章标题
来源:互联网 发布:网络短信免费发送 编辑:程序博客网 时间:2024/06/05 16:37
继承是一种类和类的关系,比如小汽车类和汽车类,小汽车类继承了汽车类,小汽车就叫汽车类的子类或者派生类,汽车就是小汽车的父类或者基类,继承的好处就是子类可以继承父类的属性和方法,特别提醒private修饰符不能够被继承
语法: class 子类 extends 父类{}
eg:class coupe extends Car{
…………….
}
实际应用:
//父类public class Car{public int height;public int weight;private int MaxSpeed;//私有属性public String logo;public void drive(){ System.out.println("父类的方法被调用");}}//子类public class Coupe extends Car{}//子类已经被创建 可以在main函数中调用coupe的方法和属性(从父类继承而来)public class Test{ public static void main(String[] args){ Coupe coupe = new Car();//子类的实例化 coupe.height = 1;//继承父类的属性 并且可写 coupe.weight = 3; coupe.MaxSpeed = 100;//会报错因为是私有属性 coupe.drive();//继承父类的 方法 drive }}----------子类还可以拥有自己的方法和属性(重写)//子类public class Coupe extend Car{ public void drive(){ System.out.println("drive方法已经重写");//优先调用子类的方法 }}
那么继承的初始化顺序是什么样的呢?
先初始化父类再初始化子类
先执行初始化对象中的属性再执行构造方法中的初始化
eg:
public class Car{public int height = 1;//先将height赋值public int weight;private int MaxSpeed;//私有属性public String logo;public void drive(){ System.out.println("父类的方法被调用");}//构造方法public Car(){ System.out.println("父类执行了"); height = 2;//更改height}}//子类public class Coupe extends Car{// 构造方法 public Coupe(){ System.out.println("子类执行了"); }}//子类已经被创建 可以在main函数中调用coupe的方法和属性(从父类继承而来)public class Test{ public static void main(String[] args){ Car car = new Car(); System.out.println("height:"+height);// Console显示为2; Coupe coupe = new Car();//子类的实例化 coupe.height = 1;//继承父类的属性 并且可写 coupe.weight = 3; coupe.drive();//继承父类的 方法 drive }}//Consloe中 会显示父类执行了子类执行了父类的方法被调用//但是先进行父类的构造方法的初始化 还是属性的初始化呢?//可以在构造方法中再添加一个数据 跟据最后输出什么来判断先初始化构造方法还是 //先初始化属性----------上述更改height在构造器中的值证明先初始化属性在初始化构造方法
创建子类对象时1.先创建父类对象进行属性初始化。2.初始化父类的构造方法 3.再初始化子类的属性4.初始化子类的构造方法。
阅读全文
0 0
- 文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题 文章标题 文章标题 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 马里奥派对
- Python中的列表方法
- AngularJS—拦截器和好棒的例子
- 阿里巴巴矢量图的使用
- HOG Matlab代码 3——关于 HOG 代码 的一些解释 1&2
- 文章标题
- Android 表格布局
- Android 关于arm64-v8a、armeabi-v7a、armeabi、x86下的so文件兼容问题
- 3.3Struct2(上午)的配置和在开发中的应用
- 优化方法总结
- 根据2个经纬度点,计算这2个经纬度点之间的距离(通过经度纬度得到距离)
- 前端面试
- Servlet(动态网页)的学习
- 动态规划经典题目:最大连续子序列和