精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

也許有了這5個特性, Java能重歸巔峰?

責任編輯:editor006

作者:三文魚 

2017-11-10 16:04:46

摘自:it168網站

Yegor Bugayenko稱,他偶然受到了Brian Goetz關于Java中數據類提議的啟發,立即意識到自己也有一些關于如何使Java成為更好語言的想法。

Yegor Bugayenko稱,他偶然受到了Brian Goetz關于Java中數據類提議的啟發,立即意識到自己也有一些關于如何使Java成為更好語言的想法。其中,以下這五個最重要的。

全局變量

Java中有單例,這大家都知道。如果能在Java中啟用全局變量并擺脫單例對象,這不是很好么。PHP,JavaScript,Ruby和許多其他語言都有,為什么Java沒有?看看這個代碼: 也許有了這5個特性, Java能重歸巔峰?

這是一個單例,但是它很冗長。可以簡單地用一個全局變量替換它:也許有了這5個特性, Java能重歸巔峰?

  編寫更少的代碼,閱讀起來更容易!

全局函數和命名空間

為了將靜態方法組在一起,我們創建了工具類,必須定義私有構造函數來防止它們實例化。另外,還必須記住靜態方法所在的特定工具類中,這樣的方法一點都不高效。Yegor Bugayenko建議我們將全局函數添加到Java和可選的“名稱空間”來對它們進行分組。 看看這個工具類:也許有了這5個特性, Java能重歸巔峰?

Yegor Bugayenko的觀點是,既然已經在使用類作為函數的集合了,那么就讓它更方便一些。在一些應用程序中,我們甚至不需要命名空間,只需要全局函數,例如C或者C ++。

完全訪問私有屬性和方法

為了從外部訪問私有屬性或對象的方法,我們必須使用Reflection API。這并不是特別困難,但它需要的這些代碼卻不容易閱讀和理解:也許有了這5個特性, Java能重歸巔峰?

Yegor Bugayenko建議,允許任何對象訪問另一個對象的任何屬性和方法:也許有了這5個特性, Java能重歸巔峰?

當然,如果它們是私有的,編譯器會發出警告。在編譯時,您只需忽略警告并繼續工作。

默認為NULL

可以用不完整的參數來調用構造函數和方法。默認情況下,我們不提供的參數將默認被設置為null。另外,當一個方法必須有返回值時,但是沒有返回語句時,Java應該返回null。這幾乎就是它在PHP,Ruby和許多其他語言中的工作原理。

當一些參數是可選的時,我們不需要定義這么多的方法。方法重載非常冗長,而且難以理解。相反,應該有一個具有參數列表的方法。其中一些將由調用者提供,另一些將被設置為空。該方法將決定要做什么,例如:也許有了這5個特性, Java能重歸巔峰?

然后調用save(f)或save(f,“UTF-16”)。 該方法將更方便,就像在Ruby中一樣,通過名稱提供方法參數:也許有了這5個特性, Java能重歸巔峰?

另外,當沒有返回值時,該方法必須默認返回null。寫入返回null是浪費時間的,這并不能真正提高可讀性:也許有了這5個特性, Java能重歸巔峰?

從這段代碼中可以明顯看出,如果文件存在,該方法將加載并返回其內容。如果不是,則返回null,這對于調用者來說是一個很好的指示器。

getter和setter

顯而易見,我們需要這個特性:每個私有屬性都必須自動擁有setter和getter。不需要去創建,就像Kotlin和Ruby一樣,Java應該提供。如果沒有getter和setter來讀取并修改,那么又有什么意義呢?

有了這個新功能,就不再需要Lombok或IntelliJ IDEA的輔助。

鏈接已復制,快去分享吧

企業網版權所有?2010-2024 京ICP備09108050號-6京公網安備 11010502049343號

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 甘孜| 西乌珠穆沁旗| 淄博市| 唐海县| 九江县| 临泽县| 马公市| 张家川| 太原市| 腾冲县| 綦江县| 双辽市| 大竹县| 桦甸市| 攀枝花市| 浦城县| 防城港市| 宝清县| 合肥市| 平乐县| 剑阁县| 蓝田县| 凤山市| 延边| 金昌市| 共和县| 秦安县| 邛崃市| 保康县| 广昌县| 彩票| 安阳市| 葫芦岛市| 孟津县| 元朗区| 福建省| 江门市| 陆川县| 紫金县| 望谟县| 元谋县|