更新時(shí)間:2022-08-03 11:25:58 來源:動(dòng)力節(jié)點(diǎn) 瀏覽1988次
Inner 類是嵌套在另一個(gè)類中的類。內(nèi)部類對(duì)嵌套它的類具有訪問權(quán)限,它可以訪問外部類中定義的所有變量和方法。
子類是從另一個(gè)稱為超類的類繼承的類。子類可以訪問其父類的所有公共和受保護(hù)的方法和字段。
在 Java 中,訪問說明符是在定義訪問范圍的類名之前使用的關(guān)鍵字。類的訪問說明符類型有:
(1)Public : Class,Method,Field 可以從任何地方訪問。
(2)受保護(hù):方法、字段可以從它們所屬的同一個(gè)類或子類中訪問,也可以從同一個(gè)包的類中訪問,但不能從外部訪問。
(3)默認(rèn)值:方法、字段、類只能從同一個(gè)包中訪問,不能從其本機(jī)包之外訪問。
(4)Private:Method、Field 可以從它們所屬的同一個(gè)類中訪問。
當(dāng)需要在一個(gè)類的多個(gè)對(duì)象之間共享一個(gè)方法或變量而不是為每個(gè)對(duì)象創(chuàng)建單獨(dú)的副本時(shí),我們使用 static 關(guān)鍵字來使所有對(duì)象共享一個(gè)方法或變量。
封裝是面向?qū)ο缶幊讨械囊粋€(gè)概念,用于將屬性和方法組合在一個(gè)單元中。
封裝有助于程序員遵循模塊化的軟件開發(fā)方法,因?yàn)槊總€(gè)對(duì)象都有自己的一組方法和變量,并且獨(dú)立于其他對(duì)象提供其功能。封裝還用于數(shù)據(jù)隱藏目的。
java中的單例類只能有一個(gè)實(shí)例,因此它的所有方法和變量都只屬于一個(gè)實(shí)例。單例類概念對(duì)于需要限制類的對(duì)象數(shù)量的情況很有用。
單例使用場(chǎng)景的最佳示例是由于某些驅(qū)動(dòng)程序限制或任何許可問題而限制只能與數(shù)據(jù)庫建立一個(gè)連接。
循環(huán)在編程中用于重復(fù)執(zhí)行一個(gè)語句或語句塊。Java中有三種類型的循環(huán):
(1)For 循環(huán)
Java中使用for循環(huán)來重復(fù)執(zhí)行語句給定的次數(shù)。當(dāng)程序員知道執(zhí)行語句的次數(shù)時(shí),使用 For 循環(huán)。
(2)While 循環(huán)
當(dāng)某些語句需要重復(fù)執(zhí)行直到滿足某個(gè)條件時(shí),使用 While 循環(huán)。在 while 循環(huán)中,在執(zhí)行語句之前首先檢查條件。
(3)執(zhí)行 While 循環(huán)
Do While 循環(huán)與 While 循環(huán)相同,只是在執(zhí)行語句塊后檢查條件。因此,在 do while 循環(huán)的情況下,語句至少執(zhí)行一次。
在 java 中,float 占用 4 個(gè)字節(jié)的內(nèi)存,而 Double 占用 8 個(gè)字節(jié)的內(nèi)存。Float 是單精度浮點(diǎn)十進(jìn)制數(shù),而 Double 是雙精度十進(jìn)制數(shù)。
在java中,常量是使用關(guān)鍵字Final來聲明的。值只能賦值一次,賦值后不能更改常量的值。
在下面的示例中,聲明了一個(gè)名為 const_val 的常量并為其賦值:
私有最終 int const_val=100
當(dāng)一個(gè)方法被聲明為 final 時(shí),它不能被子類覆蓋。這個(gè)方法比任何其他方法都快,因?yàn)樗鼈冊(cè)诰幾g時(shí)被解析。
當(dāng)一個(gè)類被聲明為final時(shí),它不能被子類化。示例 String、Integer 和其他包裝類。
java.lang.object
在 java 中,main() 方法不能返回任何數(shù)據(jù),因此,它總是聲明為 void 返回類型。
在 Java 中,包是類和接口的集合,它們相互關(guān)聯(lián),捆綁在一起。包的使用有助于開發(fā)人員模塊化代碼并將代碼分組以進(jìn)行適當(dāng)?shù)闹赜?。一旦代碼被打包到 Packages 中,就可以在其他類中導(dǎo)入并使用。
是的,我們可以通過在類名之前使用 abstract 關(guān)鍵字來創(chuàng)建一個(gè)抽象類,即使它沒有任何抽象方法。但是,如果一個(gè)類只有一個(gè)抽象方法,則必須將其聲明為抽象方法,否則會(huì)報(bào)錯(cuò)。
抽象類和接口之間的主要區(qū)別在于,接口只能擁有沒有具體實(shí)現(xiàn)的公共靜態(tài)方法的聲明,而抽象類可以擁有具有任何訪問說明符(公共、私有等)的成員,無論是否具有具體實(shí)現(xiàn)。
使用抽象類和接口的另一個(gè)關(guān)鍵區(qū)別是實(shí)現(xiàn)接口的類必須實(shí)現(xiàn)接口的所有方法,而從抽象類繼承的類不需要實(shí)現(xiàn)其超類的所有方法。
一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,但它只能擴(kuò)展一個(gè)抽象類。
與抽象類相比,接口的性能較慢,因?yàn)榻涌谛枰~外的間接。開發(fā)人員需要考慮的另一個(gè)關(guān)鍵因素是任何類只能擴(kuò)展一個(gè)抽象類,而一個(gè)類可以實(shí)現(xiàn)多個(gè)接口。
接口的使用也給開發(fā)人員帶來了額外的負(fù)擔(dān),因?yàn)槿魏螘r(shí)候在類中實(shí)現(xiàn)接口;開發(fā)人員被迫實(shí)現(xiàn)接口的每一種方法。
在java中,當(dāng)一個(gè)包被導(dǎo)入時(shí),它的子包是不被導(dǎo)入的,如果需要開發(fā)者需要單獨(dú)導(dǎo)入它們。
例如,如果開發(fā)人員導(dǎo)入包 university.*,則名為 university 的包中的所有類都會(huì)被加載,但不會(huì)加載子包中的類。要從其子包(例如部門)加載類,開發(fā)人員必須顯式導(dǎo)入它,如下所示:
導(dǎo)入 university.department.*
在java中,main方法必須是public static才能正確運(yùn)行任何應(yīng)用程序。如果 main 方法被聲明為私有,開發(fā)者不會(huì)得到任何編譯錯(cuò)誤,但是它不會(huì)被執(zhí)行并且會(huì)給出運(yùn)行時(shí)錯(cuò)誤。
在java中,我們只能通過值而不是通過引用將參數(shù)傳遞給函數(shù)。
在java中,為了將對(duì)象序列化為字節(jié)流,類實(shí)現(xiàn)了一個(gè)名為Serializable的接口。實(shí)現(xiàn)可序列化接口的類的所有對(duì)象都被序列化,并且它們的狀態(tài)保存在字節(jié)流中。
當(dāng)需要通過網(wǎng)絡(luò)傳輸數(shù)據(jù)時(shí)使用序列化。使用序列化,對(duì)象的狀態(tài)被保存并轉(zhuǎn)換為字節(jié)流。字節(jié)流通過網(wǎng)絡(luò)傳輸,對(duì)象在目的地重新創(chuàng)建。
Try 塊需要后跟 Catch 塊或 finally 塊或兩者。從 try 塊拋出的任何異常都需要在 catch 塊中捕獲,或者在代碼中止之前要執(zhí)行的任何特定任務(wù)都放在 finally 塊中。
相關(guān)閱讀
Java實(shí)驗(yàn)班
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
Java就業(yè)班
有基礎(chǔ) 直達(dá)就業(yè)
Java夜校直播班
業(yè)余時(shí)間 高薪轉(zhuǎn)行
Java在職加薪班
工作1~3年,加薪神器
Java架構(gòu)師班
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)