大家好!!!
在Java面向对象中有三大特点:封装、继承和多态。
所以我们今天要学习的是继承和多态。
知识点如下:
1.包
在Java中包就相当于保存文件的文件夹方便管理和查找。
如果在一个程序中没有声明包,类将会被存放在default的包中,default的包没有名称,所以我们要学会自定以包。在程序中声明包的语法如下:
package <包名>
需要注意的事:声明一个包的语句必须写在类的第一行。
如果需要使用Java中已经存在的包,就需要使用import语句导入包。
使用格式如下:
import<包名><类名>
如果要使用多个类,可以使用"*"表示包中所有类。
一个包中具有缺省访问权限的成员只能在同一个包中被引用,如果包中的成员的访问权限为public,那么那些成员才能被其他包中的类所引用。
2.重载和重写
重载:方法的重载,是指一个类中的多个方法可以具有相同的方法名,但是方法的参数不能相同。
在使用方法重载是需要注意以下几点:
(1)同一个类中方法名相同,参数列表不同。
(2)返回值类型不能用来区分方法的重载。
重写:子类扩展了父类,子类是一个特殊的父类。重写是在以父类为基础,额外增加新的属性和方法。子类包括与父类同名的方法,这种现象被称为方法重写,也被称为方法覆盖。
3.继承
继承是面向对象程序设计的一个重要特征,它是通过继承原有类派生出的子类进而构造出更为复杂的子类。子类既可以定义新的行为特征,又继承了原有类的行为特征。
Java的继承使用extends关键字实现,实现继承的类称为子类,被继承的类称为父类又被称为基类、超类。
Java的继承语法格式如下:
[修饰符]class 子类名[extends 父类名]{
//类定义部分
}
4.多态
多态是指同一个操作作用于不同的对象,可以有不同的解释,产生不同的执行效果。
强制转换类型转换:如果需要让引用变量调用运行时的类型的方法,则必须将其强制类型转换为运行时类型,强制类型转换需要借助于类型转换运算符。
instanceof运算符
instanceof运算符的前一个操作数通常是一个引用类型变量,后一个操作数通常是一个类,它用于判断运算符前面的引用变量是否是运算符后面的类型或其子类型的实例。
下面是结合知识点所出的题目:
题目解析如下: