学习记录
1.类的继承格式
class 父类 { }
class 子类 extends 父类 { }
多个子类有类似的属性,将子类共同的特征作为父类,当子类继承父类时,就能将父类的public特征作为共同拥有的属性(private属性不能被子类继承)
举个游戏里的例子:草,纤维,木材,布, 长矛都为物品,分别为不同子类,但其中某些物品有某种共性,比如草,纤维,木头都是基础材料,布为纤维制成的二级材料,而长矛为武器。
如果将每个物品单独分出一个类,就会有很多重复代码,比如草,纤维,木材可能都属于自然资源类,并且堆叠数可能相同。
但是,如果写一个叫“一级资源”的父类,将它们的共同点,诸如堆叠数,负重,售价等属性写出,当有物品符合“一级资源”的定义,就只需继承“一级资源”父类,就能有让物品拥有父类的所有公开属性,就能大幅减少工作量。
需要注意java中一个子类不能同时继承多个父类。
继承特点:
1.子类拥有父类所有非private的属性与方法
2.子类在继承父类的基础上可以扩展自己独有的属性与方法,子类拥有的属性或方法总是大于等于父类的
3.一个子类只能继承一个父类,但是可以多重继承,如,A继承B,A不能再继承C,但是B还可以继承C