關於類方法的三個問題

2021-10-22 21:19:52 字數 823 閱讀 6015

1.為什麼類方法不能操作例項變數?

1 類方法在該類被載入到記憶體時,就分配了相應的入口位址(類方法是屬於類的,隨著類的載入而被分配記憶體)

2當類的位元組碼檔案被載入到記憶體時,類的例項方法不會被分配入口位址,只有當該類建立物件後,類中的例項方法才分配入口位址(非靜態成員(方法和變數)是屬於類的物件,只有物件例項化後才存在,然後通過類的物件去訪問)

summary:

之所以類方法不能操作例項變數,是因為當例項變數不存在的時候類方法就存在了。或者說,類方法在執行時可能還不存在任何物件,所以也就不存在任何例項變數,因此沒法使用

2.為什麼類方法中不能直接呼叫自己類內的例項方法?

1無論呼叫成員變數還是方法,都需要主調(主語呼叫者),其格式為:主調。方法/成員變數。如果方法名/變數名是static修飾的,預設字首為類名;沒有static修飾的,預設字首為this。

2類方法是屬於類本身而不是類的物件,在類方法裡呼叫例項方法/變數,那麼this就代表這個類本身(矛盾點:例項方法/變數屬於類的物件,而非類),自然找不到想呼叫的例項方法/變數,因為他們在物件中。

summary:

類方法不能直接呼叫自己類內的例項方法。若想呼叫,則須建立乙個物件,將物件名作為主調,即通過指定的物件去呼叫例項方法。

3.為什麼this不能出現在類方法中?

this代表的是呼叫這個函式的物件的引用,而類方法是屬於類的,不屬於物件,類方法成功載入後,物件還不一定存在

關於dubbo的三個問題

dubbo是乙個分布式服務框架,致力於提供高效能和透明化的rpc遠端服務呼叫方案,以及soa服務治理方案。其核心部分包括 遠端通訊 提供對多種基於長連線的nio框架抽象封裝,包括多種執行緒模型 序列化 請求 響應 模式的資訊交換方案 集群容錯 提供基於介面方法的透明遠端過程呼叫,包括多協議支援 軟負...

關於實現分頁的三個方法

語法 select from table limit stratindex,pagesize select from table limit 5,10 檢索記錄行 6 15 為了檢索從某乙個偏移量到記錄集的結束所有的記錄行,可以指定第二個引數為 1 select from table limit 9...

關於三個作者

因歷史原因,本blog專欄名字叫做fudan abc,但時過境遷,如今blog維護者已不僅僅是復旦人,一名交大才子加入了這支革命隊伍.昨天 兩個曾經的復旦人,復旦人甲和復旦人乙.今天 兩個曾經的復旦人,復旦人甲和復旦人乙.乙個曾經的交大人,交大人甲.復旦人甲目前主要寫uhci驅動的分析.分析的是2....