【JAVA】對static修飾符的入門理解(不斷總結,更新中......)。

一、static的用途

1、爲什麼要用static修飾【靜態變量】?

首先,是公共性,定義一次,大家都可以用。Static變量是在類的第一行聲明變量,不在方法或函數裏,也不是放在main裏,因爲,這樣,它才能被所有的方法和函數調用,一般用於修飾類的屬性和方法。

舉例:計數用(獲取用戶的PV訪問量),比如:你打開一個APP,系統可以計算並記錄你訪問每一個頁面的次數。一進入系統,就可以用Static聲明變量,比如:public static int m_click=0; 每訪問一個頁面,在頁面的代碼中讓這個變量加1。

其次,是減少變量的重複定義,另外,調用也比較方便,不需要再定義和聲明。

最後,列出了其他文章關於static的用法:

  1. 修飾變量,把它變成類的成員,大家可以共享使用。
  2. 修飾方法,可以直接用"類.方法名()”來調用。
  3. 修飾代碼塊,把多個類成員放在一起初始化,注意:每次用NEW聲明對象時,就自動執行,但只會執行一次。
  4. 靜態導包,把類的方法直接導入到當前類裏,可直接用“方法名()”調用類。
package HELLO;

public class helloword {
	
	public static void main(String[] args) {
		bian uuu=new bian();
		System.out.println("聲明再調用,麻煩而且還多佔用內存:"+uuu.m);
		System.out.println("直接調用顯示i的值:"+bian.m);
	}
}

二、用static修飾【靜態變量】

主要用於一個類(.java文件內)中的應用,一般在第一行。其實,剛開始,我一直有一個疑問,那不加static不是也能定義變量嗎?爲什麼要加?後來測試發下,如果不加static,在static的靜態方法或函數中是不能調用的。你看一看下面的例子就知道了。

package HELLO;

public class helloword {
	
	// 注意:用 static都 是在類的最前面,這樣可以被下面的方法和函數調用,造成不要放在方法裏。
	
	static int i=0;  // static靜態變量
	public int u=0;  // 不帶static的變量
	
	void shuxue()  // 在這個方法中可以調用i,也可以調用u,沒毛病。
	{
		i++;
		u++;
		System.out.print("小類!"+i);
	}
	
	// 注意,main()前面有static,但是他不能調用沒有加static的變量u,但可以調用i,
	
	public static void main(String[] args) {
		
		i++; // 調用加了static的i沒毛病。
		// u++;  但是u不行,會報錯的。
		System.out.print("顯示i的值:"+i);
		
	}
	
}

三、用static修飾【靜態方法】

1、實例,直接調用靜態方法

package Book;
public class book {

	public static void print()  // 顯示內容
	{
		System.out.println("水滸傳:66元");
		
	}
	public static void main(String[] args) 
	{
		book.print();   // 直接調用,在其他類中也是直接調用的。
	}
}

四、用static修飾【代碼塊】

package Book;
public class book {

	// ================== 靜態代碼塊 
	
	static 
	{
	System.out.println("類初始化塊");
	int	age = 20;
	}
	
	
	public static void print()  // 顯示內容
	{
		System.out.println("水滸傳:66元");
		
	}
	public static void main(String[] args) 
	{
		book m_book1= new book(); // 只要對象化類,就自動執行static的代碼塊。
		book m_book2= new book(); //  但是,只執行一次。
	}
}

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章