国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

當修改final值時要重新編譯類

2019-11-17 06:00:01
字體:
來源:轉載
供稿:網友

當編譯final變量時,java編譯器通過直接將他們拷貝到使用它們的類中的方式作了優化。這提高了Java應用的速度,但是假如你修改并且重新編譯了原始的類,而沒有重新編譯使用它的類,那么新的值就沒有被拷貝過去。

例如,對于兩個類ClassA和ClassB:

public class ClassA {

static public final int PORT = 80;

}

public class ClassB {

public ClassB() {

download(ClassA.PORT);

}

PRivate void download(int port) {

....

}}

ClassB中的第4行將象下面這樣編譯:

download(80);

當ClassA中的第3行變成了下面這樣:

static public final int PORT = 8080;

ClassB會仍然保持了于原來相同的值。你必須也重新編譯ClassB,以便那一行更新為下面這樣:

download(8080);

移除final要害字是可能的,但是在許多時候經常會優先考慮速度的提高。確保所有的類都被編譯過。假如你使用了一個build工具,例如ant,當代碼還處于開始的不穩定階段時,要使用ant clean和rebuild。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 广平县| 酉阳| 祁东县| 鸡东县| 珠海市| 宜章县| 浙江省| 隆安县| 瓦房店市| 巴塘县| 和顺县| 太仓市| 汝州市| 仁化县| 巴南区| 盈江县| 麦盖提县| 禄劝| 葵青区| 镇远县| 泸西县| 益阳市| 松江区| 灵台县| 黄冈市| 论坛| 静宁县| 梅河口市| 吉隆县| 广平县| 巴林左旗| 玉龙| 泰来县| 洪湖市| 田东县| 富源县| 平果县| 乌兰察布市| 元阳县| 阳高县| 桐梓县|