构造器重载:
同一个类里有多个构造器,多个构造器的形参列表不同,即被称为构造器重载
————————————————————————————————————————————————————————————————————————
*******类的继承:************
(1)java的继承具有单继承的特点
(2)继承的格式
修饰符 class Subclass extends SuperClass
{
//类定义部分
}
(3)java的子类不能获得父类的构造器
-————————————————————————————————————————————————————————————————————————
继承示例程序;
public class Fruit
{
public double weight;
public void info(){
System.out.println(“我是一个水果,重量为:”+weight);
}
}
public class Apple extends Fruit
{
public static void main(String[] args)
{
//创建Apple对象
Apple app = new Apple();
//Apple对象本身没有weight成员变量,但因为其父类有weight变量,也可以访问Apple对象的weight变量
app.weight=56;
//调用Apple对象的info()方法
app.info();
}
}
————————————————————————————————————————————————————————————————————————————
重写父类的方法: Override
(1)为什么需要重写父类的方法?
子类扩展了父类,子类是一种特殊的父类。大多数时候,子类总是以父类为基础,额外增加新的成员变量和方法。
但有一种情况例外:子类需要重写父类的方法。例如:
鸟类都包含了飞翔的方法,鸵鸟是一种鸟类,所以鸵鸟应该是鸟类的子类,因此它将获得飞翔的方法,但显然
飞翔的方法并不适应鸵鸟,因此鸵鸟需要重写鸟类方法。
————————————————————————————————————————————————————————————
重写:实例程序
class Bird //一个程序只能有一个public
{
//定义一个fly方法
public void fly(){
System.out.println(“在我的心上,自由的飞翔”);
}
}
public class Tuoniao extends Bird //public 修饰的类下有程序的入口 main()方法
{ //重写fly()方法 Override
public void fly(){
System.out.println(“你是鸵鸟,飞个捶捶儿”);
}
public static void main(String[] args)
{
//创建对象
Tuoniao ti= new Tuoniao();
//执行fly()方法,输出你是鸵鸟,飞个捶捶儿
ti.fly();
}
}