靜態方法不能直接訪問非靜態方法

2021-10-21 15:47:05 字數 717 閱讀 5121

靜態方法不能直接訪問非靜態方法

1、main方法是靜態方法,靜態方法屬於類方法,是類本身去呼叫,不是類的例項去呼叫

2、例項方法,不屬於類的方法,所以必須依靠物件來呼叫

3、靜態方法中訪問另外乙個普通方法,就只能建立乙個物件,因為普通方法依靠物件呼叫

4、靜態方法不能直接訪問非靜態方法,對於靜態方法,一般是通過類名.方法名呼叫

如果確實需要在靜態方法中訪問另外乙個普通方法,就只能建立乙個物件

public

class

test1

public

static

void

main

(string[

] args)

}

為什麼靜態方法不能直接訪問非靜態成員

static成員是在jvm的classloader載入類的時候初始化的,而非static的成員是在建立物件,即new 操作的時候才初始化的 類載入的時候初始化static的成員,此時static 已經分配記憶體空間,所以可以訪問 非static的成員還沒有通過new建立物件而進行初始化,所以必然不可...

為什麼靜態方法不能直接訪問非靜態成員?

static成員是在jvm的classloader載入類的時候初始化的,而非static的成員是在建立物件,即new 操作的時候才初始化的 類載入的時候初始化static的成員,此時static 已經分配記憶體空間,所以可以訪問 非static的成員還沒有通過new建立物件而進行初始化,所以必然不可...

為什麼靜態方法不能直接訪問非靜態成員?

static成員是在jvm的classloader載入類的時候初始化的,而非static的成員是在建立物件,即new 操作的時候才初始化的 類載入的時候初始化static的成員,此時static 已經分配記憶體空間,所以可以訪問 非static的成員還沒有通過new建立物件而進行初始化,所以必然不可...