閱讀881 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Java麵向對象基礎--Static關鍵字的作用及使用

1、使用static聲明屬性

如果希望一個屬性被所有對象共同擁有,可以將其聲明為static類型。

聲明為static類型的屬性或方法,此屬性或方法也被稱為類方法,可以由類名直接調用。

class Person{	// 定義Person類
	String name ;		// 定義name屬性,暫時不封裝
	int age ;			// 定義age屬性,暫時不封裝
	static String country = "A城" ;	// 定義城市屬性,有默認值,static
	public Person(String name,int age){
		this.name = name ;
		this.age = age; 
	}
	public void info(){	// 得到信息
		System.out.println("姓名:" + this.name + ",年齡:" + this.age + ",城市:" + country) ;
	}
};
public class StaticDemo02{
	public static void main(String args[]){
		Person p1 = new Person("張三",30) ;	 // 實例化對象
		Person p2 = new Person("李四",31) ;	 // 實例化對象
		Person p3 = new Person("王五",32) ;	 // 實例化對象
		System.out.println("--------------- 修改之前 -------------") ;
		p1.info() ;
		p2.info() ;
		p3.info() ;
		p1.country = "B城" ;		// 修改static屬性
		System.out.println("--------------- 修改之後 -------------") ;
		p1.info() ;
		p2.info() ;
		p3.info() ;
	}
};



Person.country = "B城" ;

2、聲明static方法

如果一個方法使用了static關鍵字聲明,此方法可以直接使用類名進行調用。

注意:使用static方法,不能調用非static的屬性或方法。

因為:static屬性或方法,可以在對象沒有實例化的時候就直接進行調用了。

class Person{	// 定義Person類
	private String name ;		// 定義name屬性,暫時不封裝
	private int age ;			// 定義age屬性,暫時不封裝
	private static String country = "A城" ;	// 定義城市屬性,有默認值,static
	public static void setCountry(String c){ // 此方法可以直接由類名稱調用
		country = c ;
	}
	public static String getCountry(){
		return country ;
	}
	public Person(String name,int age){
		this.name = name ;
		this.age = age; 
	}
	public void info(){	// 得到信息
		System.out.println("姓名:" + this.name + ",年齡:" + this.age + ",城市:" + country) ;
	}
};
public class StaticDemo04{
	public static void main(String args[]){
		Person p1 = new Person("張三",30) ;	 // 實例化對象
		Person p2 = new Person("李四",31) ;	 // 實例化對象
		Person p3 = new Person("王五",32) ;	 // 實例化對象
		System.out.println("--------------- 修改之前 -------------") ;
		p1.info() ;
		p2.info() ;
		p3.info() ;
		Person.setCountry("B城") ;		// 調用靜態方法修改static屬性的內容
		System.out.println("--------------- 修改之後 -------------") ;
		p1.info() ;
		p2.info() ;
		p3.info() ;
	}
};

最後更新:2017-04-03 16:49:06

  上一篇:go Linux磁盤管理
  下一篇:go 不良編程文化