A. java裡面的const-string什麼意思
java裡面沒法用const。
1、可以用final關鍵字。
2、例如 final int m = 9。
被聲明為final的變數不能被再次賦版值。
final也可以用於聲明方法或類,權被聲明為final的方法或類不能被繼承。
3、注意const是java的保留字以備擴充。
const-String表示定義好的字元串常量在任何位置都不能被更改。
B. global、static、const、final 以及private、protected、public
在編程領域,理解不同訪問修飾符對於代碼組織和安全性至關重要。首先,我們來探討public(公共的)、protected(受保護的)、private(私有的)三個訪問修飾符。
它們的開放性由大到小依次為public>protected>private。public修飾的成員可以在任何地方被訪問,不受限制。protected修飾的成員僅在繼承類中可訪問,但不包括繼承類的子類。private修飾的成員只能在其所屬類內被訪問,無法從外部訪問。
接下來,讓我們關注global(全局的)、const(常量)、static(靜態的)、final(最終的)這些修飾符。
global修飾的變數在整個程序中可被訪問,其值在程序的整個生命周期中保持不變。const修飾的變數在聲明時被初始化且在程序運行期間不可修改。static修飾的成員變數或函數屬於類,而非實例,可被多個對象共享,且靜態方法只能訪問靜態變數或調用靜態方法。final修飾的變數一旦被賦值就不能更改,同時final關鍵字也可以用於修飾類、方法和變數,限制它們的繼承性或可改變性。
綜上所述,不同類型的訪問修飾符為編程提供了豐富的靈活性,幫助開發人員構建更安全、更易於維護的代碼結構。正確使用這些修飾符可以確保代碼的清晰度、可訪問性和安全性,從而提升程序的整體質量。
C. JAVA中的final等於C++中的const
Java裡面的final放在類型如之前(比如final class_A p1 = obj_A),和指針裡面的常量指針(形如const int* p2 = &var;)剛好是相反的!!前者可以通過p1修改obj_A,而c++里常量指針表示沒有許可權修改指向的東西。與前者相對應的應該是int* const p3 = &var!!!也就是指針常量。java里的final和c++里的指針常量都不能更改綁定,卻可以修改對象內部。而常量指針恰恰相反
D. Java裡面final的用法以及解釋一下和c++中const用法的聯系
在JAVA中方法傳遞的參數是對象的應用,而你在方法中修改的並不是這個應用的而是修改了被應用對象的值,所以是可以修改的。但如果方法中是這樣animal=null;那就不行了。簡單來將final修飾的是指這個變數不能被修改。
在沒有重寫Object的toString()等方法的情況下,toStirng()方法可以看得出
內存地址
。