关于继承

关于继承

  • 什么是继承?
    • 解:1.继承是描述类和类,接口和接口之间的关系的。
      2.当一个类的对象,可以调用另一个类非私有属性的成员(包括成员变量和成员方法)时,我们称前者继承了后者 。
      3.声明一个类继承另一个类时使用关键字extends来表示。
      4.一个类继承了另一个类,那么子类就自动拥有了父类(superclass非私有属性的成员。
      5.一个类只允许继承一个父类(安全性问题 1),即单继承。但是接口之间可以1对多关系继承(无安全性问题2),即多继承
  • 为什么有继承?
    • 解:继承可以提高代码的复用性。为多态提供了前提。提供了扩展性。
  • 继承中方法的重写(override)是什么?
    • 解:当子类中出现和父类完全一样的方法时(返回值类型,方法名,参数列表相同),称之为子类重写了父类的方法。*重写父类方法时,重写的方法权限不能小于被重写的方法权限。
  • 继承中关键字super是什么意思?
    -解:super来自于父类(superclass)的缩写,它表示为父类的XXX(XXX表示父类非私有的成员),创建原因:当子类和父类出现了同名问题时,子类的对象由于就近原则会调用自己的成员,super关键字就解决了子类想要调用父类成员的问题。

  1. 安全性问题产生的原因:如果类有了两个父类,那么当两个父类中存在同名成员时,请问子类的对象在调用时,应该调用哪一个父类的成员?此处产生歧义便产生了安全性问题。 ↩︎

  2. 原因:由于接口的定义知,接口中只含有抽象方法和静态的常量。那么你只可以通过接口名.常量名方式来调用静态常量,不会产生歧义。又因为方法为抽象的没有任何主体,方法不会执行任何操作,产生任何结果,所以两个同名方法调用哪一个方法都是一样的,不存在歧义。 ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值