星期一, 8月 21, 2006

"需要有物件參考才能使用非靜態欄位、方法或屬性"的問題排除

之前在提到即時運算視窗時,會在呼叫非靜靜態方法時出現"需要有物件參考才能使用非靜態欄位、方法或屬性",其實他就是告訴你非static的方法,需要有該物件才可以叫用!

若你在程式中直接使用
public class Test
{
 public static void A()
 {
  B();
 }
 public void B()
 { 
 }
}
你一樣會在編譯時,發生同樣的錯訊,非靜態的方法,一定要透過物件本身去呼叫他
例如
Test t = new Test();
t.B();

由此可以知道上回的命令若要測試~就新增一個靜態的方法如下
static int TestSum(int i1, int i2)
{
 Test t = new Test();
 return t.sum(i1, i2);
}
叫用時直接使用 ? Test.TestSum(1, 2)即可~

2 個意見:

匿名 提到...

謝謝你的文章 解決了困擾我很久的問題^^
3Q

Unknown 提到...

感謝