Java中對static的理解中static的理解

JAVA中static的理解
靜態變量:類變量,爲此類全部對象共享
靜態方法:靜態方法裏沒有this引用
不能在靜態方法中訪問非靜態的成員變量和方法
能夠直接經過類訪問靜態成員,即便不存在該類的對象
//Student.java
package cn.edu.uibe.oop;java

public class Student {
String name; //學生姓名
static int counter=0; //學生對象的數目oop

public Student(String name){
this.name = name;
counter++; //對象計數加1,須要用靜態變量才能爲全部對象共享
}
public void print(){
System.out.println("name="+name+"tcounter="+counter);
}
public static void showCounter(){
System.out.println("counter="+counter);
//System.out.println(name); //error,靜態方法裏面不能訪問非靜態的成員變量和方法
//this. //error,靜態方法裏面沒有this引用
}ui

public static void main(String[] args) {
Student[] student = {
new Student("zhangsan"),
new Student("lisi"),
new Student("zhaowu")
};
for(int i=0;i<student.length;i++){
student.print();
}
new Student("wuming");
System.out.println("counter="+Student.counter);
Student.showCounter();
}
}this

相關文章
相關標籤/搜索