Java中的屬性分為實例屬性和類屬性兩種,實例屬性也叫對象屬性,是指在創建類的實例時,每個實例中都會有一份自己的屬性,彼此之間互不干擾,而類屬性則是所有實例共享的,只有一份屬性,稱之為靜態屬性。
對象屬性一般用于存儲對象的狀態信息,也就是對象的特征,如人類對象中的姓名、年齡、性別等。定義對象屬性的方式是在類中定義變量,然后在每個對象中分別初始化這些變量的值。例如:
public class Person{ String name; int age; char gender; } Person p1 = new Person(); p1.name = "Tom"; p1.age = 18; p1.gender = 'M'; Person p2 = new Person(); p2.name = "Amy"; p2.age = 20; p2.gender = 'F';
類屬性則用于存儲與類本身相關的數據,如計數器和常量等。定義類屬性的方式是在變量前面加上static關鍵字,這樣所有對象都共享同一份屬性。例如:
public class Circle{ static final double PI = 3.14; static int counter = 0; double radius; Circle(double r){ radius = r; counter ++; } double circumference(){ return 2 * PI * radius; } } Circle c1 = new Circle(3); Circle c2 = new Circle(4); System.out.println("Circles created: " + Circle.counter); // 輸出2
需要注意的是,類屬性被所有對象共享,所以可以通過類名直接訪問,而不需要先創建對象。例如,上述代碼中可以使用Circle.counter訪問計數器。同時,類屬性也可以通過對象名訪問,但不建議這樣做,因為容易產生混淆。
上一篇php curl 打開