網(wǎng)絡(luò)編程 static final修飾的常量怎么使用?
static final修飾的常量怎么使用?Static final long serialVersionUID=1L不能修改靜態(tài)常量。簡述常量和靜態(tài)變量區(qū)別,何時用?Java中靜態(tài)常量和靜態(tài)變量的區(qū)
static final修飾的常量怎么使用?
Static final long serialVersionUID=1L
不能修改靜態(tài)常量。
簡述常量和靜態(tài)變量區(qū)別,何時用?
Java中靜態(tài)常量和靜態(tài)變量的區(qū)別是不同的:靜態(tài)變量屬于類,所以也稱為類變量;成員變量屬于對象,所以也稱為實例變量(object variable)。它在內(nèi)存中的位置不同:靜態(tài)變量存儲在方法區(qū)的靜態(tài)區(qū);成員變量存儲在堆內(nèi)存區(qū);成員變量隨著對象(又稱實例)的創(chuàng)建而存在,隨著對象的消失而消失。靜態(tài)變量可以通過類名或?qū)ο笳{(diào)用;成員變量只能通過對象名調(diào)用。靜態(tài)方法中沒有this關(guān)鍵字。如何理解?非靜態(tài)方法可以同時調(diào)用靜態(tài)和非靜態(tài)成員變量;非靜態(tài)方法可以同時調(diào)用靜態(tài)和非靜態(tài)成員方法。
簡述常量和靜態(tài)變量區(qū)別,何時用?
靜態(tài)變量只有在第一次遇到時才初始化,然后狀態(tài)保持不變,因此可以使用它們記錄一些狀態(tài)信息;非靜態(tài)局部變量每次調(diào)用此函數(shù)并進(jìn)入生命周期時都會初始化?!盀槭裁磿?dǎo)致這種差異?”只要明白“這是不同設(shè)計目的造成的差異”。