java是什么 為什么很多Java程序員都不愿意升級(jí)到最新的jdk?
為什么很多Java程序員都不愿意升級(jí)到最新的jdk?目前,JDK已經(jīng)達(dá)到j(luò)dk14,而國(guó)內(nèi)大部分企業(yè)仍然使用JDK7到j(luò)dk9。隨著版本更新,該功能將得到增強(qiáng)。那么為什么許多程序員不想升級(jí)到最新版本呢
為什么很多Java程序員都不愿意升級(jí)到最新的jdk?
目前,JDK已經(jīng)達(dá)到j(luò)dk14,而國(guó)內(nèi)大部分企業(yè)仍然使用JDK7到j(luò)dk9。隨著版本更新,該功能將得到增強(qiáng)。那么為什么許多程序員不想升級(jí)到最新版本呢?下面讓我談?wù)勎业膫€(gè)人想法:
1。有些舊系統(tǒng)需要持續(xù)維護(hù)。它的可擴(kuò)展性和性能問題不大,只需要一些小的修改。在這種情況下,主要是追求穩(wěn)定,升級(jí)不僅是JDK升級(jí),更是配套升級(jí),這需要人力物力成本。不過,升級(jí)帶來的好處并不多。在這種情況下,考慮到升級(jí)的成本和好處,大多數(shù)用戶不會(huì)選擇升級(jí)JDK。
2. JDK7到j(luò)dk9在中國(guó)被廣泛使用。它們非常成熟,幾乎可以滿足開發(fā)要求。它們相對(duì)穩(wěn)定,程序員也非常熟練地使用它們。有些程序員追求穩(wěn)定性,對(duì)新技術(shù)有一定的抵觸情緒。他們認(rèn)為舊的JDK在很多項(xiàng)目中都使用過,他們有實(shí)踐和經(jīng)驗(yàn)。對(duì)于新版本的JDK升級(jí),你需要了解成本,而且你害怕升級(jí)后不兼容的風(fēng)險(xiǎn),所以你會(huì)選擇你比較熟悉的版本應(yīng)用。
從成本和收益、學(xué)習(xí)成本和穩(wěn)定性的角度討論了不升級(jí)JDK版本的原因。
讓我們談?wù)勎业膫€(gè)人經(jīng)歷。軟件開發(fā)不能由個(gè)人完成,團(tuán)隊(duì)合作的前提是環(huán)境和工具的一致性。團(tuán)隊(duì)中的JDK版本必須一致。當(dāng)個(gè)人想要升級(jí)到最新版本時(shí),團(tuán)隊(duì)的其他成員也需要升級(jí)。雖然新版JDK的一些特性非常吸引人,但實(shí)際項(xiàng)目中應(yīng)用的新特性并不多,需要所有團(tuán)隊(duì)成員的學(xué)習(xí)成本。對(duì)于有新項(xiàng)目的充滿活力的團(tuán)隊(duì),我認(rèn)為領(lǐng)導(dǎo)者可以帶頭嘗試更多的新技術(shù)應(yīng)用。如果我們想把工作做好,我們必須首先磨礪我們的工具。掌握一些新特性可以提高我們的開發(fā)效率。但同時(shí),我們不能追趕新的,我們還需要考慮制度、環(huán)境、成本等。
以上是我個(gè)人的一些看法,希望能對(duì)您有所幫助。
java還可以存活多久?
如果是10年前,也許沒有人懷疑Java會(huì)消亡,但是今天Python在全世界流行,因?yàn)樗苋菀讓W(xué)習(xí)。許多人懷疑Java不會(huì)長(zhǎng)壽。但是想想C語言、FORTRAN語言和其他語言。目前,C語言廣泛應(yīng)用于微處理器編程,F(xiàn)ORTRAN語言是科學(xué)計(jì)算的首選語言。因此,有理由相信Java語言作為一個(gè)里程碑式的語言系統(tǒng)將長(zhǎng)期存在:首先,Java是一種簡(jiǎn)單的面向?qū)ο蟮姆植际?、?qiáng)大的、安全的、可移植的、高性能的多線程動(dòng)態(tài)語言。它沒有C的指針,不允許直接操作數(shù)據(jù)地址,因此更安全。
2、Java可以實(shí)現(xiàn)大規(guī)模的數(shù)據(jù)庫管理、web開發(fā)、移動(dòng)應(yīng)用開發(fā)等,具有強(qiáng)大的生命力。
3、Java可以創(chuàng)建跨平臺(tái)的應(yīng)用程序。
4、目前,高校開設(shè)了Java語言課程,其生命力仍處于旺盛時(shí)期。
為什么許多程序員都不愿意升級(jí)Java 8?
我已經(jīng)使用java8四五年了?,F(xiàn)在我正在考慮是否要升級(jí)到j(luò)ava13。你告訴我我不想升級(jí)到j(luò)ava8。你來自中世紀(jì)嗎?
為什么說java里面只有值傳遞?
在這個(gè)問題上,不同的人有不同的理解。對(duì)于Java初學(xué)者來說,他們可能認(rèn)為Java中的參數(shù)傳遞分為值傳遞和引用傳遞。至于為什么,教科書上說了。對(duì)于程序員的某些工作年限,他們可能會(huì)認(rèn)為,如果傳遞的參數(shù)類型是普通類型,則傳遞的是值;如果參數(shù)是對(duì)象,則傳遞的是引用。另一些人認(rèn)為,只有Java中的值傳遞才是主要問題的主題。
對(duì)于Java編程語言,前兩種理解是錯(cuò)誤的。Java中只使用值傳遞。對(duì)我來說,一開始,我也理解了價(jià)值傳遞和參照傳遞的理論,但隨著自己代碼的積累,我逐漸發(fā)現(xiàn)事實(shí)并非如此。那么為什么只有價(jià)值傳遞呢?
首先,讓我們了解什么是值傳遞,什么是引用傳遞?
值傳輸意味著調(diào)用函數(shù)時(shí),實(shí)際參數(shù)值被復(fù)制并傳遞給被調(diào)用函數(shù)。修改被調(diào)用函數(shù)中的參數(shù)值不會(huì)影響原始參數(shù)值。
引用傳遞意味著調(diào)用函數(shù)時(shí),實(shí)際參數(shù)的地址直接傳遞給被調(diào)用函數(shù)。修改被調(diào)用函數(shù)中的參數(shù)值將影響原始參數(shù)值。
如果傳遞的參數(shù)類型是普通基本類型,則必須復(fù)制實(shí)際參數(shù)值并將其傳遞給形式參數(shù)。但是,當(dāng)參數(shù)類型是對(duì)象時(shí),它也是復(fù)制的參數(shù)值,并將其傳遞給形式參數(shù)。只復(fù)制對(duì)象的引用地址,即內(nèi)存中分配的存儲(chǔ)地址,而不是直接傳遞的引用地址。
此時(shí),有些人可能會(huì)問為什么一個(gè)對(duì)象會(huì)被傳遞給另一個(gè)方法。在此方法中修改對(duì)象的屬性值時(shí),原始調(diào)用方法中對(duì)象的屬性值將更改。這不就是參考傳遞嗎?
事實(shí)上,這是一個(gè)非常令人困惑的問題。如果你仔細(xì)看看上面的說法,事實(shí)并非如此。將一個(gè)對(duì)象傳遞給另一個(gè)方法會(huì)傳遞什么?傳遞對(duì)象引用的地址。對(duì)象引用的地址是否已在其他方法中修改?原始對(duì)象引用是否受影響?不
!因此,Java中沒有引用傳遞,只有值傳遞。不要犯任何錯(cuò)誤!