java核心技术卷一笔记(继承)

利用继承,可以基于已存在的类构造一般新类。继承已存在的类就是复用这些类的方法和域。在此基础上,还可以添加新的方法和域,以满足新的需求。

extends表明正在构建的新类派生于一个已存在的类。已存在的类称为超类、基类或父类,新类称为子类、派生类或者孩子类。

覆盖方法(重写方法)是指子类重新定义超类的方法,只改变方法内部,不修改方法名、参数和返回类型。可以在子类中使用super调用超类的方法。

super 关键字有两个用途:一是调用超类的方法,二是调用超类的构造器。调用构造器的语句只能作为另一个构造器的第一条语句出现。构造参数既可以传递给本类( this) 的其他构造器,也可以传递给超类(super ) 的构造器。

静态绑定:如果是private、static、final修饰的或者构造器方法,那么编译器将可以准确知道应该调用哪个方法,这种调用方式称为动态绑定。与之对应的是动态绑定。动态绑定有一个非常重要的特性:无需对现存的代码进行修改,就可以对程序进行扩展。

阻止继承:final 类和方法

定义类的时候用到了final修饰符,这个类就不能被继承。

定义方方法时,使用了final修饰,这个方法就不能被重写,fianl类中的方法都是final方法。

抽象类

  • 被abstract修饰的方法被称为抽象类
  • 抽象类可以有抽象方法和普通方法。抽象方法不一定有抽象方法,但是有抽象方法的类必须是抽象类。
  • 抽象类不能被实例化。
  • 构造方法,类方法(用static修饰的方法)不能实例为抽象方法。
  • 抽象类的子类必须给出所有抽象类中的所有抽象方法的具体实现,才不是抽象类。
名称说明备注
public可以对所有类访问 
protect对本包和所有子类可见子类没有在同一包中也可以访问
private仅对本类可见 
缺省可以被同一包中所有类访问如果子类没有在同一个包中,也不能访问

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值