初识Java(四)

目录

一、继承

1、成员变量与方法的访问

2、初始化时,父类与子类构造方法的执行

3、final关键字

4、组合


一、继承

继承就是共性的抽取,提高代码的复用率。

1、成员变量与方法的访问

  • 在子类中访问成员方法时,优先访问子类,成员变量也是同理。
  • 若是在子类与父类中有同名的方法或变量,使用super关键字可访问父类的方法和变量。

2、初始化时,父类与子类构造方法的执行

先去初始化父类,之后再去初始化子类。

所以在子类的构造方法中使用super关键字在第一条语句中,调用父类的构造方法,完成父类的构造。

super与this的相同与不同

相同:

  • 都是Java中的关键字。
  • 都不能在非静态成员方法中使用。
  • 都是在构造方法中的第一条语句,但不能同时出现。

不同:

  • super调用父类构造方法,this调用子类构造方法。
  • super访问子类中父类特有的成员变量,this访问子类特有的成员变量。
  • super()在构造方法中编译器默认提供,this()不会由编译器默认提供。
  • super是在子类中继承下来的父类那一部分的引用,this是当前对象的引用。

3、final关键字

可以修饰类,也可修饰变量。

修饰类后,表示此类不可被继承;

修饰变量后,表示此变量只能被赋值一次,之后不能被修改。

4、组合

Java语言不支持多继承,也就是一个类只能继承一个1类,不能继承多个类。

但是有组合这种形式,也就是有a,b,c,d四个类,可以在d中声明出abc三个类型的变量,作为成员变量,这种形式简称has-a的形式。

// 轮胎类
class Tire{
// ...
}
// 发动机类
class Engine{
// ...
}
// 车载系统类
class VehicleSystem{
// ...
}
class Car{
private Tire tire; // 可以复用轮胎中的属性和方法
private Engine engine; // 可以复用发动机中的属性和方法
private VehicleSystem vs; // 可以复用车载系统中的属性和方法
// ...
}

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值