1. 程式人生 > >java 中類方法與物件方法

java 中類方法與物件方法

public class Test
{
	/**
	* 下面這個方法就是靜態方法,應該就是樓主所說的類方法~~
	* 靜態方法必須定義成static的,在類Test被例項化以前就已經存在於記憶體中
	* 靜態方法使所有該類的例項也就是物件共有的方法
	*/
	public static void f1()
	{
		System.out.println("靜態方法");
	}
	/**
	* 下面這個方法就是一般的非靜態方法,應該就是樓主所說的物件方法~~
	* 只有在類Test被例項化以後,才被載入到記憶體中,具體儲存在堆中,
	* 非靜態方法是每個該類的例項也就是物件所私有的
	*/
	public void f2()
	{
		System.out.println("非靜態方法");
	}

	public static void main(String[] args)
	{
		Test t=new Test();
	
		/**
		* 靜態方法必須既可以用類名直接呼叫,也可以用物件來呼叫
		*/
		Test.f1();//正確
		t.f1();//正確,但不推薦這麼用
		/**
		* 非靜態方法只能用物件來呼叫
		*/
		//Test.f2();//正確
		t.f2();//正確
	}
}