Java:继承
继承是面向对象的三大特征之一,也是实现软件复用的重要手段。
1. Java的继承是通过extends关键来实现的,实现继承的类被称为子类,被继承的类称为父类。
2. 重写
子类扩展了父类,子类是一个特殊的父类。大部分时候,子类总是以父类为基础,额外增加新的成员变量和方法。但也有一种情况例外:子类需要重写父类的方法。例如鸟类都包含了飞翔方法,其中鸵鸟是一种特殊的鸟类,因此鸵鸟应该是鸟的子类,因而它也将从鸟类获得飞翔方法,但是这个飞翔方法明显不适合鸵鸟,为此,鸵鸟需要重写鸟类的方法,如:
1 class Fruit{
2 public double weight;
3 public void info(){
4 System.out.println(weight);
5 }
6 }
7
8 public class Apple extends Fruit{
9 public static void main(String[] args) {
10 Apple a = new Apple();
11 a.weight = 56;
12 a.info();
13 }
14 }
2 public double weight;
3 public void info(){
4 System.out.println(weight);
5 }
6 }
7
8 public class Apple extends Fruit{
9 public static void main(String[] args) {
10 Apple a = new Apple();
11 a.weight = 56;
12 a.info();
13 }
14 }
class Bird{
public void fly(){
System.out.println("我在天空中自由自在的飞翔……");
}
}
public class Ostrich extends Bird{
public void fly(){
System.out.println("我只能在地上奔跑……");
}
public static void main(String[] args) {
Ostrich os = new Ostrich();
//这里Ostrich对象的fly方法,将输出“我在地上奔跑……”
os.fly();
}
}
public void fly(){
System.out.println("我在天空中自由自在的飞翔……");
}
}
public class Ostrich extends Bird{
public void fly(){
System.out.println("我只能在地上奔跑……");
}
public static void main(String[] args) {
Ostrich os = new Ostrich();
//这里Ostrich对象的fly方法,将输出“我在地上奔跑……”
os.fly();
}
}