成为java高手_我如何想成为Java
成為java高手
我喜歡Java。 我喜歡用Java編程。 但是在使用Python一段時(shí)間后,我希望對(duì)其進(jìn)行一些更改。 它幾乎純粹是語(yǔ)法上的,因此可能有更好的JVM語(yǔ)言,但是我并不真正感興趣,因?yàn)槲胰匀恍枰褂闷胀ǖ腏ava來(lái)工作。 我意識(shí)到這些更改將不會(huì)實(shí)施(盡管我以為我聽(tīng)說(shuō)其中的一個(gè)實(shí)際上正在發(fā)布未來(lái)版本中); 這些只是一些想法。
我不想以開(kāi)放和免費(fèi)的Python方式釋放Java。 實(shí)際上,我經(jīng)常喜歡Java的限制所帶來(lái)的挑戰(zhàn)。 我主要只是想少打字。 因此,這是我希望在Java中看到的更改。
擺脫分號(hào)
我意識(shí)到它們是有目的的,但實(shí)際上不是必需的。 實(shí)際上,它們實(shí)際上使代碼更難閱讀,因?yàn)閷⒍嘈写a推到同一行幾乎總是更難閱讀。 從技術(shù)上講,使用分號(hào)可以將整個(gè)代碼文件壓縮為一行,以減小文件大小,但是用Java多久完成一次? 可能比我知道的要多,但我不知道它已經(jīng)完成了。
卸下花括號(hào)
這有兩個(gè)主要原因。 首先,我們可以結(jié)束花括號(hào)冷戰(zhàn)! 其次,我們可以停止在花括號(hào)上浪費(fèi)代碼行。
而且,就像我之前說(shuō)的,我正在嘗試減少正在執(zhí)行的鍵入次數(shù),這將有所幫助。 最后,通過(guò)這樣做,花括號(hào)可以被打開(kāi)以用于新用途(稍后將看到)。
運(yùn)算符重載
當(dāng)涉及到數(shù)學(xué)運(yùn)算時(shí),我并不真正在意運(yùn)算符的重載。 它們可能很方便,但是方法可以做到這一點(diǎn)。 我最大的擔(dān)心是比較,尤其是==。 我真的希望Java跟隨Python在==是用于相等性檢查(甚至可以通過(guò)equals方法完成)和“ is”用于身份檢查。 同時(shí),實(shí)現(xiàn)Comparable應(yīng)該允許您將比較運(yùn)算符與它們一起使用,而不需要自己轉(zhuǎn)換數(shù)字返回值。
如果需要,也可以允許某種方式來(lái)重載數(shù)學(xué)運(yùn)算符。
元組和/或數(shù)據(jù)結(jié)構(gòu)
我可以使用其中任何一個(gè),但兩者都會(huì)更好。 元組作為一次返回多個(gè)事物的返回類(lèi)型特別有用,這有時(shí)很方便。 對(duì)于簡(jiǎn)單的數(shù)據(jù)結(jié)構(gòu)(基本上是C結(jié)構(gòu))也可以做到這一點(diǎn),因?yàn)樗鼈儜?yīng)該非常輕便。
數(shù)據(jù)結(jié)構(gòu)的一件大事就是擺脫Java Bean。 如果我們也能夠用它們定義不變量,那就更好了。 Java Beans的最大問(wèn)題在于,我們不必為了傳遞一些數(shù)據(jù)而定義一個(gè)完整的類(lèi)。 如果我們無(wú)法獲得結(jié)構(gòu),那么至少,我想獲得下一個(gè)東西。
物產(chǎn)
天哪,我喜歡屬性,尤其是在Python中。 允許您使用簡(jiǎn)單的訪問(wèn)器和變量,就好像它是一個(gè)直接變量一樣,使代碼看起來(lái)更漂亮。
默認(rèn)為
我已經(jīng)看到一些人談?wù)摗案玫哪J(rèn)設(shè)置”的情況,最典型的情況是省略修飾語(yǔ)(例如public和private或static )。 public很容易成為類(lèi)和方法的最常用關(guān)鍵字,那么為什么默認(rèn)的“ package-private”呢? 我也可以主張將private設(shè)置為字段的默認(rèn)值,但是我有點(diǎn)想默認(rèn)值應(yīng)該在所有地方都相同,以減少混亂,但是我對(duì)此并不固守。
我就變量是否應(yīng)默認(rèn)為final爭(zhēng)論不休,以幫助推動(dòng)人們邁向不變性的想法,但我不在乎。
類(lèi)型對(duì)象
這種做法與關(guān)于智能默認(rèn)設(shè)置的先前觀點(diǎn)相吻合。 我認(rèn)為原始函數(shù)的自動(dòng)功能是能夠?qū)⑺鼈冇米鲗?duì)象。 我真的不在乎你怎么做。 最好將其打開(kāi)以獲取真實(shí)的基元,以便在需要時(shí)進(jìn)行優(yōu)化。 這對(duì)我來(lái)說(shuō)并不重要。 如果大多數(shù)時(shí)候它們自然地作為原語(yǔ)傳遞,那會(huì)很酷,但是只需調(diào)用它們的任何方法,它們就可以自動(dòng)裝箱到對(duì)象中。 參數(shù)和返回類(lèi)型應(yīng)該不在乎傳遞哪一個(gè)。 這也將有助于大大減少Java中內(nèi)置功能接口的數(shù)量,因?yàn)榇蠖鄶?shù)實(shí)際上是處理基元的重復(fù)項(xiàng)。
列表,字典和集合文字
對(duì)于那些使用javaScript或Python的人來(lái)說(shuō),您真的知道我在說(shuō)什么。 我的意思是,那輕巧方便嗎? 這與可以采用Streams的構(gòu)造函數(shù)(類(lèi)似于Java的Generators之類(lèi)。有點(diǎn)類(lèi)似)結(jié)合在一起,將使集合使用起來(lái)相當(dāng)容易。 字典文字和set文字使花括號(hào)真正有用。
鰭
這是我希望在Java中看到的更改列表。 就像我之前說(shuō)過(guò)的那樣,我認(rèn)為這些事情永遠(yuǎn)不會(huì)發(fā)生(盡管我聽(tīng)說(shuō)它們正在努力處理類(lèi)型對(duì)象),但這實(shí)際上只是一個(gè)愿望清單。 你們同意我的選擇嗎?
翻譯自: https://www.javacodegeeks.com/2015/01/how-id-like-java-to-be.html
成為java高手
總結(jié)
以上是生活随笔為你收集整理的成为java高手_我如何想成为Java的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java 线程什么时候出栈_在Java中
- 下一篇: java 编译 器 ide_Java 8