Java 多型的例子
阿新 • • 發佈:2018-12-23
多型就是通過繼承和動態繫結來決定程式使用哪個實現.
一個簡單的例子。
interface Animal { public void eat(); } class Whale extends SeaAnimal { int age = 20; @Override public void eat() { System.out.println("Whale is eatting a small fish"); } private void swimming() { System.out.println("Whale is swimming"); } @Override public int getAge() { return age; } public static void staticSwimming() { System.out.println("Static whale is swimming ."); } } public class SeaAnimal implements Animal { int age = 10; private void swimming() { System.out.println("SeaAnimal is swimming."); } public static void staticSwimming() { System.out.println("Static seaAnimal is swimming."); } public int getAge() { return age; } public static void main(String[] args) { SeaAnimal animal = new Whale(); animal.swimming(); animal.eat(); animal.staticSwimming(); System.out.println("The age is " + animal.age); System.out.println("The age is " + animal.getAge()); } @Override public void eat() { System.out.println("SeaAnimal is eatting a small fish"); } }
輸出結果:
SeaAnimal is swimming.
Whale is eatting a small fish
Static seaAnimal is swimming.
The age is 10
The age is 20
從例子可以看出:
- 成員變數不具備多型
-
private
方法不具備多型 -
static
方法不具備多型 - 構造方法不具備多型