一 继承的一些定义
1.为什么使用继承
将重复代码抽取到父类中2.使用继承有什么优点
1)方便修改代码2)减少代码量
子类和父类是is-a关系
二 如何使用继承
编写父类
class 父类{
//父类的属性和方法
}
编写子类,继承父类
class 子类 extends 父类{//只能继承一个父类
//子类特有的属性和方法
}
java继承关键字 extends
C#继承关键字 :
1.子类访问父类成员
使用super关键字,super代表父类对象
在子类构造方法中调用且必须是及第一句
- 访问父类构造方法
super();
super(name);
- 访问父类属性
super.name;
- 访问父类方法
super.print();
2.子类可以继承父类的所有资源 ?
- private成员
- 子类与父类不在同包
- 构造方法
3.访问修饰符
- 可以修饰属性和方法
- 本类、同包、子类可以访问
访问修饰符总结
| 访问修饰符 | 本类 | 同包 | 子类 | 其他 |
|---|---|---|---|---|
| prvate | √ | |||
| 默认(triendly) | √ | √ | ||
| protected | √ | √ | √ | |
| public | √ | √ | √ | √ |
4.多重继承的关系初始化顺是怎样的?
父类属性→ 父类构造方法→ 子类属性→ 子类构造方法
5.何时使用继承
- 符合is-a关系的设计使用继承
- 将子类共有的属性和新闻哥放到父类中
继承是代码重用的一种方式
三 方法重写
1.方法重写的规则
- 方法名相同
- 参数列表相同
- 返回值类型相同或者是其子类
- 访问权限不能严与父类
同类 同名 不同参
方法重载和方法重写的异同
| 位置 | 方法名 | 参数表 | 返回值 | 访问修饰符 | |
|---|---|---|---|---|---|
| 方法重写 | 子类 | 相同 | 相同 | 相同或是其子类 | 不能比父类更严格 |
| 方法重载 | 同类 | 相同 | 不相同 | 无关 | 无关 |
四 抽象类
语法
public abstract class 抽象类{
public abstract void 方法名();//没有方法体
//....
}
abstract也可以用于方法-抽象方法
- 抽象方法没有方法体
- 抽象方法必须在抽象类中
- 抽象必须在子类中被实现,除非子类是抽象类
五 总结

2123



被折叠的 条评论
为什么被折叠?



