抽象方法中為什么不能定義方法體
靜態(tài)方法為什么不能調(diào)用非靜態(tài)方法
方法的重寫與重載
隱式轉(zhuǎn)換與顯式轉(zhuǎn)換
實現(xiàn)線程的2種方法了解
set、Map了解
今天進(jìn)行了Java小游戲的考核,考核小游戲和知識點佣赖,游戲還可以轿衔,就是知識點我復(fù)習(xí)的不是很好又沾,我自己感覺復(fù)習(xí)的還好呀励幼,就是感覺都會灌曙,但是其實過一段時間就會忘了耗跛,也通過這次考核我也認(rèn)識到了我的這個問題裕照,感覺會了哎,其實還是不太行的调塌,還得多復(fù)習(xí)幾遍晋南,才能算是掌握的還行,真的深刻反思到了烟阐,意義重大搬俊!
下面就是我對一些不清楚知識點的反思:
黑窗口敲HelloWorld
java引用數(shù)據(jù)類型
下是Java中常見的引用數(shù)據(jù)類型:
字符串(String):表示一串字符的序列。字符串在Java中是不可變的蜒茄,可以使用雙引號(" ")來表示唉擂。
數(shù)組(Array):表示相同類型的多個元素的集合。數(shù)組可以存儲任何數(shù)據(jù)類型的元素檀葛,可以使用方括號([ ])來聲明和訪問數(shù)組玩祟。
類(Class):表示具有相同屬性和行為的對象的模板。類是面向?qū)ο缶幊痰幕靖拍钣炝梢杂糜趧?chuàng)建對象空扎。
接口(Interface):表示一組方法的集合,用于定義類應(yīng)該實現(xiàn)的行為润讥。接口定義了一組方法的簽名转锈,但沒有方法的實現(xiàn)。
枚舉(Enum):表示一組具有固定值的命名常量楚殿。枚舉類型在Java中用于定義一組相關(guān)的常量撮慨。
集合(Collection):表示一組對象的容器。Java提供了多種集合類,如List砌溺、Set和Map影涉,用于存儲和操作對象的集合。
數(shù)組的初始化
動態(tài)初始化:
int[] arg1 =new int[]{1,2,3};
靜態(tài)初始化
int[] arg2 = {1,2,3,4,5};
相對路徑與絕對路徑的好處
使用相對路徑適合于項目內(nèi)部文件的引用规伐,簡潔蟹倾、可移植。
比如·把自己的文件發(fā)給別人猖闪,用相對路徑比較好
使用絕對路徑適合于需要準(zhǔn)確定位文件或目錄位置的情況鲜棠,具有精確性和可靠性。
for each循環(huán)
使用?for each?循環(huán)來遍歷數(shù)組或集合中的元素培慌。for each?循環(huán)也被稱為增強型?for?循環(huán)岔留。
下面是?for each?循環(huán)的基本語法:
for (元素類型 變量名 : 數(shù)組或集合) {
? ? // 執(zhí)行循環(huán)體操作
}
元素類型?是指數(shù)組或集合中元素的類型,變量名?是用于在每次迭代中存儲當(dāng)前元素的變量名检柬。數(shù)組或集合?是要遍歷的對象
下是Java中常見的引用數(shù)據(jù)類型:
字符串(String)
數(shù)組(Array)
類(Class)
接口(Interface)
枚舉(Enum)
集合(Collection)
大駝峰命名法
一般用于類名的命名
每個單詞的首字母都大寫,單詞之間不使用下劃線或其他分隔符
小駝峰命名法
通常用于變量名竖配、函數(shù)名等標(biāo)識符
第一個單詞的首字母小寫何址,后續(xù)單詞的首字母大寫,單詞之間不使用下劃線或其他分隔符
方法的命名規(guī)范
變量名不能以數(shù)字開頭进胯,但可以包含數(shù)字用爪。不用關(guān)鍵字,小駝峰命名法
java三大特性
封裝
繼承
多態(tài)
常量
使用全大寫字母胁镐,單詞之間用下劃線分隔偎血。
常量通常使用?final?修飾。
抽象方法中為什么不能定義方法體
抽象方法是一種特殊類型的方法盯漂,它只有方法的聲明而沒有具體的實現(xiàn)代碼颇玷。在面向?qū)ο缶幊讨校橄蠓椒ㄓ脕矶x一種約定或契約就缆,要求子類必須實現(xiàn)這個方法帖渠。
抽象方法的目的是為了提供一種統(tǒng)一的接口,讓不同的子類可以按照自己的方式實現(xiàn)這個方法竭宰。
抽象方法不能定義方法體空郊,因為方法體是具體的實現(xiàn)代碼,
靜態(tài)方法為什么不能調(diào)用非靜態(tài)方法
靜態(tài)方法是屬于類的方法切揭,而非靜態(tài)方法是屬于對象的方法狞甚。靜態(tài)方法在類加載時就已經(jīng)存在,可以直接通過類名來調(diào)用廓旬,而不需要創(chuàng)建類的實例哼审。非靜態(tài)方法需要通過對象來調(diào)用,必須先創(chuàng)建對象才能使用。由于靜態(tài)方法在類加載時就存在棺蛛,而非靜態(tài)方法需要通過對象來調(diào)用怔蚌,所以在靜態(tài)方法中無法直接調(diào)用非靜態(tài)方法。
方法的重寫與重載
方法的重寫是子類重新定義父類中已經(jīng)存在的方法旁赊,方法名稱桦踊、參數(shù)列表和返回類型必須相同,實現(xiàn)多態(tài)终畅。
方法的重載是在同一個類中定義多個具有相同名稱但參數(shù)列表不同的方法籍胯,根據(jù)參數(shù)類型和數(shù)量確定調(diào)用哪個方法。
隱式轉(zhuǎn)換與顯式轉(zhuǎn)換
隱式轉(zhuǎn)換是編譯器自動進(jìn)行的類型轉(zhuǎn)換离福,發(fā)生在類型兼容的情況下杖狼,不需要顯式指定。
顯式轉(zhuǎn)換是通過編寫代碼來進(jìn)行的類型轉(zhuǎn)換妖爷,需要明確指定轉(zhuǎn)換的目標(biāo)類型蝶涩。
實現(xiàn)線程的2種方法了解
1.使用線程庫:
在許多編程語言和平臺中,都提供了線程庫(Thread Library)絮识,用于方便地創(chuàng)建和管理線程绿聘。
通過線程庫,開發(fā)人員可以使用庫提供的接口來創(chuàng)建線程次舌、啟動線程熄攘、等待線程完成以及進(jìn)行線程間通信等操作。
一些常見的線程庫包括 Java 中的?java.lang.Thread?類彼念、C++ 中的?std::thread?類挪圾、Python 中的?threading?模塊等。
2.使用操作系統(tǒng)提供的原生線程支持:
操作系統(tǒng)通常提供了原生線程支持逐沙,允許開發(fā)人員直接使用操作系統(tǒng)提供的線程 API 來創(chuàng)建和管理線程哲思。
通過原生線程支持,開發(fā)人員可以更細(xì)粒度地控制線程的創(chuàng)建酱吝、調(diào)度和管理也殖,以及利用操作系統(tǒng)提供的特性和優(yōu)化。
一些常見的原生線程支持包括 POSIX 線程(pthread)庫务热、Windows 線程 API(如 CreateThread)忆嗜、Linux 線程 API(如 clone)等。
總結(jié):
使用線程庫是一種跨平臺且更易于使用的方式來實現(xiàn)線程崎岂,適用于大多數(shù)應(yīng)用程序的線程需求肆汹。
使用操作系統(tǒng)提供的原生線程支持可以獲得更底層的控制和性能優(yōu)勢抡柿,適用于對線程管理有特定需求的場景早处。
set叁鉴、Map了解
Set 是一種無序且不重復(fù)的集合途样,用于判斷元素是否存在于集合中。
Map 是一種將鍵和值關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)濒憋,用于通過鍵來查找和操作對應(yīng)的值何暇。