Java鳥是Java語言中的一種基本數(shù)據(jù)類型,代表了一個(gè)可以存儲(chǔ)數(shù)字的變量。而翅膀則是Java鳥中的一種附加屬性,可以為Java鳥增加飛行能力。
public class JavaBird { private int number; private Wing wing; public JavaBird(int number) { this.number = number; this.wing = null; } public void setWing(Wing wing) { this.wing = wing; } public void fly() { if (wing == null) { System.out.println("Sorry, I don't have wings to fly."); } else { System.out.println("I'm JavaBird #" + number + ", flying with my " + wing.getColor() + " wing!"); } } } public class Wing { private String color; public Wing(String color) { this.color = color; } public String getColor() { return color; } }
在以上代碼中,JavaBird類包含了一個(gè)Wing類型的屬性wing,用于存儲(chǔ)翅膀?qū)ο蟆etWing()方法可以為JavaBird對象設(shè)置翅膀,而fly()方法則可以讓JavaBird對象飛行。如果JavaBird對象沒有翅膀,fly()方法會(huì)輸出一句提示。
由此可以看出,Java鳥和翅膀之間是一種has-a的組合關(guān)系。Java鳥包含了翅膀?qū)傩裕岚蚴荍ava鳥的一種附加裝備,為Java鳥增加了飛行能力。