1.package包
导包第二点需要注意
a包和b包都存有Student类,c包存有测试类,我们在c中创建Student对象,系统会询问你要哪个包的Student类,并自动帮你导包
.
在导完a包的学生类后,想要再次导入b包的学生类就不能再像之前那样导了
全类名导包
通过带包名将b包重复的学生类导入
2.抽象类介绍
抽象类就是特殊的父类,内部允许编写抽象方法
什么是抽象方法?
以猫吃鱼,狗吃肉的方式进行举例讲解
我们写了一个猫类和一个狗类,两者都有吃饭的共性的成员方法,那么我们就可以抽取出这个吃饭的方法,设置在动物的父类里
但在动物的父类里面,我们发现吃饭这个方法里面的逻辑不知道该写什么了,猫吃鱼,狗吃肉,那我们究竟是写鱼呢还是写肉呢?很简单,既然写不出,我们就不写了,设计为抽象方法
抽象方法:当抽取出子类中共性的方法于父类中,父类无法描述清楚该方法的逻辑,并且这个方法在子类中必须存在(猫必须吃鱼,狗必须吃肉)时,我们就可以将该方法设计成抽象方法
3.抽象类和抽象方法的语法
在类和方法上加入abstract关键字
eat()方法已经变为抽象方法,但是抽象方法必须存在于抽象类中,所以还需要在动物类上加入abstract
.
4.子类继承抽象类,就必须将抽象类中的抽象方法描述清楚
当我们将动物类写为抽象类后,猫类和狗类继承动物类,会发现子类报错了
因为,动物吃什么,在父类中说不清楚,但是在子类中就很明确了,猫吃鱼,所以必须将抽象方法重写
抽象方法重写快捷方式:alt+回车
5.总结
.