P165 抽象的概念
子类要用父类中的方法,但是每个子类又各有特点
如:
- 图形计算面积的方法—正方形/三角形等各有不同
- 动物吃东西的方法—猫狗各有不同
如果父类当中的方法不确定如何进行{}中的方法体实现,这就是一个抽象方法
P166 抽象方法和抽象类的格式
在父类中这么写:
public abstract class Animal{
public abstract void eat();//无大括号,直接分号结束
public void normalmethod(){//一个普通的成员方法
}
}
抽象方法必须放在抽象类中,abstract class
P167 如何使用
1、不能直接创建new抽象类对象
2、必须用一个子类来继承抽象父类
3、子类必须覆盖重写抽象父类当中所有的抽象方法
👇
如何覆盖重写(实现:
- 这次不写abstract了!
4、创建子类对象进行使用
P168 注意事项
1、抽象类【不能创建对象】!!!==》只有非抽象类才可创建对象
2、抽象类中可以有【构造方法】,可供子类创建对象时【初始化父类成员】使用!
3、抽象类中不一定包含抽象方法,但是有抽象方法的类必须是抽象类
4、抽象类的子类,必须要重写抽象父类的所有的抽象方法,除非该子类也是抽象类==》否则没有意义鸭!(抽象方法里面是空的
P169 继承的案例-发红包
几个类?
- 群主类
- 普通成员类
- 用户类(共性)(因为余额操作不一样
怎么发?三要素:
- 返回值类型:集合ArrayList(整份钱💴变成几小份的💴)
- 方法名称:send
- 参数列表:1、总共要发多少钱?
-
2、分成多少份?