面向对象的继承性

通过继承,简化Staff类的定义:
public class Person {
public String name;
public int age;
public Date birthDate;
public String getInfo() {…}
}
public class Staff extends Person{
public String Hospital;
}
Staff类继承了父类Person的所有属性和方法,并增加了一个属性Hospital。Person中的属性和方法, Staff都可以利用。
子类继承了父类,就继承了父类的方法和属性。在子类中,,可以使用父类中的定义的方法和属性,也可以创新新的数据和方法
1、继承的关键词用的是extends:子类不是父类的子集,而是对父类的“扩展”
public class LoginActivity extends AppCompatActivity {}
2、jave只允许单重继承,不允许多重继承:一个子类只能继承一个父类。一个父类可以继承多个子类
class SubDemo extends Demo{ }
class SubDemo extends Demo1,Demo2…
3、继承的规则:子类不能直接访问父类中私有的(private)的成员
4、继承的优点:代码共享
代码共享,减少创建类的工作量,使子类可以拥有父类的方法和属性。
提高代码的可扩展性,更好的实现父类的方法。
5、继承的缺点如下: 继承是侵入性的。只要继承,就必须拥有父类的属性和方法。
降低代码灵活性。子类拥有父类的属性和方法后多了些约束。
增强代码耦合性(开发项目的原则为高内聚低耦合)。
当父类的常量、变量和方法 被修改时,需要考虑子类的修改,有可能会导致大段的代码需要重构。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值