A. Java參數傳遞:值傳遞or引用傳遞
Java參數傳遞機制實質上是分為值傳遞和引用傳遞兩種方式。
值傳遞: 基本類型:當基本類型作為參數傳遞時,傳遞的是值的拷貝。也就是說,方法接收到的參數是原始值的一個副本,方法內部對這個副本的任何修改都不會影響到原始值。
引用傳遞: 對象類型:當對象作為參數傳遞時,傳遞的是對象在內存中的引用。這意味著方法接收到的參數實際上是一個指向對象的指針,通過這個指針可以訪問和修改對象的屬性。但是,如果在方法內部讓這個指針指向一個新的對象,那麼原始對象並不會被改變,只是引用發生了改變。
區分要點: 內存中的存儲方式:理解對象在內存中的存儲方式是區分值傳遞和引用傳遞的關鍵。基本數據類型傳遞的是值本身,而對象傳遞的是其內存地址。 修改效果:對於基本類型,方法內部的修改不會影響到原始值;而對於對象,方法內部可以通過引用修改對象的屬性,但不能直接改變引用的指向。
綜上所述,Java的參數傳遞機制既包含值傳遞,也包含引用傳遞,主要區別在於傳遞的元素是值本身還是值的存儲位置。