一胳搞、基礎(chǔ)知識(shí):
1、JVM仆百、JRE和JDK的區(qū)別:
JVM(Java Virtual Machine):java虛擬機(jī)驶社,用于保證java的跨平臺(tái)的特性。
java語(yǔ)言是跨平臺(tái)涵防,jvm不是跨平臺(tái)的闹伪。
JRE(Java Runtime Environment):java的運(yùn)行環(huán)境,包括jvm+java的核心類(lèi)庫(kù)。
JDK(Java Development Kit):java的開(kāi)發(fā)工具,包括jre+開(kāi)發(fā)工具
2壮池、環(huán)境變量path和classpath的作用是什么偏瓤?
(1)path是配置Windows可執(zhí)行文件的搜索路徑,即擴(kuò)展名為.exe的程序文件所在的目錄椰憋,
用于指定DOS窗口命令的路徑厅克。
(2)Classpath是配置class文件所在的目錄,用于指定類(lèi)搜索路徑橙依,JVM就是通過(guò)它來(lái)尋找該類(lèi)的class類(lèi)文件的证舟。
3、變量有什么用窗骑?為什么要定義變量女责?什么時(shí)候用?
答:變量的作用:用來(lái)存儲(chǔ)數(shù)據(jù)慧域。
為什么要定義變量:用來(lái)不斷的存放同一類(lèi)型的常量鲤竹,并可以重復(fù)使用
4、&和&&的區(qū)別?
答:(1)&&會(huì)出現(xiàn)短路昔榴,如果可以通過(guò)第一個(gè)表達(dá)式判斷出整個(gè)表達(dá)式的結(jié)果辛藻,則不繼續(xù)后面表達(dá)式的運(yùn)算;
只能操作boolean類(lèi)型數(shù)據(jù)互订;
(2)&不會(huì)出現(xiàn)短路吱肌,將整個(gè)表達(dá)式都運(yùn)算。既可以操作boolean數(shù)據(jù)還可以操作數(shù)仰禽。
5氮墨、標(biāo)示符命名規(guī)則:
由數(shù)字(0-9)纺蛆,大小寫(xiě)英文字母,以及_和$組成规揪。
不能以數(shù)字開(kāi)頭桥氏。
不能使用關(guān)鍵字來(lái)自定義命名。
6猛铅、數(shù)據(jù)類(lèi)型:
(1)基本數(shù)據(jù)類(lèi)型(4類(lèi)8種):
整數(shù)類(lèi)型:byte字支、short、int奸忽、long
浮點(diǎn)數(shù)類(lèi)型:float堕伪、double
字符類(lèi)型:char
布爾類(lèi)型:boolean(ture false)
(2)引用數(shù)據(jù)類(lèi)型:
類(lèi)
接口
數(shù)組
7、類(lèi)型轉(zhuǎn)換
精度從高到低 double float long int short(char) byte
(1)自動(dòng)類(lèi)型轉(zhuǎn)換 將一個(gè)低精度—?高精度
(2)強(qiáng)制類(lèi)型轉(zhuǎn)換 將一個(gè)高精度—?低精度(精度會(huì)下降)
8栗菜、java語(yǔ)言的三種技術(shù)架構(gòu)
J2EE:企業(yè)版
是為開(kāi)發(fā)企業(yè)環(huán)境下的應(yīng)用程序提供的一套解決方案欠雌。
該技術(shù)體系中包含的技術(shù)如 Servlet、Jsp等疙筹,主要針對(duì)于Web應(yīng)用程序開(kāi)發(fā)富俄。
J2SE:標(biāo)準(zhǔn)版
是為開(kāi)發(fā)普通桌面和商務(wù)應(yīng)用程序提供的解決方案。
該技術(shù)體系是其他兩者的基礎(chǔ)腌歉,可以完成一些桌面應(yīng)用程序的開(kāi)發(fā)蛙酪。
比如Java版的掃雷。
J2ME:小型版
是為開(kāi)發(fā)電子消費(fèi)產(chǎn)品和嵌入式設(shè)備提供的解決方案翘盖。
該技術(shù)體系主要應(yīng)用于小型電子消費(fèi)類(lèi)產(chǎn)品,如手機(jī)中的應(yīng)用程序等凹蜂。
9馍驯、java的跨平臺(tái)性:
通過(guò)Java語(yǔ)言編寫(xiě)的應(yīng)用程序在不同的系統(tǒng)平臺(tái)上都可以運(yùn)行。
跨平臺(tái)的原因:
只要在需要運(yùn)行java應(yīng)用程序的操作系統(tǒng)上玛痊,先安裝一個(gè)Java虛擬機(jī)(JVM Java Virtual Machine)即可汰瘫。
由JVM來(lái)負(fù)責(zé)Java程序在該系統(tǒng)中的運(yùn)行。
10擂煞、有符號(hào)數(shù)據(jù)的表示法(次重點(diǎn))
原碼混弥,反碼(原碼取反),補(bǔ)碼(反碼+1)对省。
11蝗拿、函數(shù)
定義:函數(shù)就是定義在類(lèi)中的具有特定功能的一段獨(dú)立小程序。
特點(diǎn):
定義函數(shù)可以將功能代碼進(jìn)行封裝
便于對(duì)該功能進(jìn)行復(fù)用
函數(shù)只有被調(diào)用才會(huì)被執(zhí)行
函數(shù)的出現(xiàn)提高了代碼的復(fù)用性
對(duì)于函數(shù)沒(méi)有具體返回值的情況蒿涎,返回值類(lèi)型用關(guān)鍵字void表示哀托,
那么該函數(shù)中的return語(yǔ)句如果在最后一行可以省略不寫(xiě)。
函數(shù)的應(yīng)用兩個(gè)明確:
明確要定義的功能最后的結(jié)果是什么劳秋?
明確在定義該功能的過(guò)程中仓手,是否需要未知內(nèi)容參與運(yùn)算
12胖齐、重載:
概念:在同一個(gè)類(lèi)中,允許存在一個(gè)以上的同名函數(shù)嗽冒,只要它們的參數(shù)個(gè)數(shù)或者參數(shù)類(lèi)型不同即可呀伙。
特點(diǎn):與返回值類(lèi)型無(wú)關(guān),只看參數(shù)列表(參數(shù)類(lèi)型以及參數(shù)個(gè)數(shù))添坊。
好處:方便于閱讀剿另,優(yōu)化了程序設(shè)計(jì)。
13帅腌、數(shù)組:
概念:同一種數(shù)據(jù)類(lèi)型的集合驰弄。
好處:可以自動(dòng)給數(shù)組中的元素從0開(kāi)始編號(hào),方便操作這些元素速客。
14戚篙、內(nèi)存結(jié)構(gòu):
棧內(nèi)存:用于存儲(chǔ)局部變量,當(dāng)數(shù)據(jù)使用完溺职,所占空間會(huì)自動(dòng)釋放岔擂。
堆內(nèi)存:數(shù)組和對(duì)象,通過(guò)new建立的實(shí)例都存放在堆內(nèi)存中浪耘。
方法區(qū):靜態(tài)成員乱灵、構(gòu)造函數(shù)、常量池七冲、線程池
本地方法區(qū):window系統(tǒng)占用
寄存器:
二痛倚、面向?qū)ο?
1、面向?qū)ο笏枷耄?
(1)概述:面向?qū)ο笫窍鄬?duì)于面向過(guò)程而言的澜躺,面向過(guò)程強(qiáng)調(diào)的是功能蝉稳,面向?qū)ο髲?qiáng)調(diào)的是將功能封裝進(jìn)對(duì)象,
強(qiáng)調(diào)具備功能的對(duì)象掘鄙;
(2)思想特點(diǎn):
A:是符合人們思考習(xí)慣的一種思想耘戚;
B:將復(fù)雜的事情簡(jiǎn)單化了;
C:將程序員從執(zhí)行者變成了指揮者操漠;
比如我要達(dá)到某種結(jié)果收津,我就尋找能幫我達(dá)到該結(jié)果的功能的對(duì)象,如我要洗衣服我就買(mǎi)洗衣機(jī)浊伙,
至于怎么洗我不管撞秋。
(3)特征:
封裝:隱藏對(duì)象的屬性和實(shí)現(xiàn)細(xì)節(jié),僅對(duì)外提供公共訪問(wèn)方式
繼承: 多個(gè)類(lèi)中存在相同屬性和行為時(shí)吧黄,將這些內(nèi)容抽取到單獨(dú)一個(gè)類(lèi)中部服,那么多個(gè)類(lèi)無(wú)需再定義
這些屬性和行為,只要繼承那個(gè)類(lèi)即可拗慨。
多態(tài): 一個(gè)對(duì)象在程序不同運(yùn)行時(shí)刻代表的多種狀態(tài)廓八,父類(lèi)或者接口的引用指向子類(lèi)對(duì)象
2奉芦、類(lèi)和對(duì)象:
類(lèi):對(duì)現(xiàn)實(shí)世界中某類(lèi)事物的描述,是抽象的,概念上的定義剧蹂。
對(duì)象:事物具體存在的個(gè)體声功。
3:成員變量和局部變量的區(qū)別(重點(diǎn))
(1)作用域
成員變量:針對(duì)整個(gè)類(lèi)有效。
局部變量:只在某個(gè)范圍內(nèi)有效宠叼。(一般指的就是方法,語(yǔ)句體內(nèi))
(2)存儲(chǔ)位置
成員變量:隨著對(duì)象的創(chuàng)建而存在先巴,隨著對(duì)象的消失而消失,存儲(chǔ)在堆內(nèi)存中冒冬。
局部變量:在方法被調(diào)用伸蚯,或者語(yǔ)句被執(zhí)行的時(shí)候存在,存儲(chǔ)在棧內(nèi)存中简烤。
當(dāng)方法調(diào)用完剂邮,或者語(yǔ)句結(jié)束后,就自動(dòng)釋放横侦。
(3)初始值
成員變量:有默認(rèn)初始值挥萌。
局部變量:沒(méi)有默認(rèn)初始值,使用前必須賦值枉侧。
4引瀑、匿名對(duì)象
(1)匿名對(duì)象就是沒(méi)有名字的對(duì)象。是對(duì)象的一種簡(jiǎn)寫(xiě)形式榨馁。
(2)應(yīng)用場(chǎng)景
A:只調(diào)用一次類(lèi)中的方法憨栽。
B:可以作為實(shí)際參數(shù)在方法傳遞中使用
5、封裝:
指隱藏對(duì)象的屬性和實(shí)現(xiàn)細(xì)節(jié)翼虫,僅對(duì)外提供公共訪問(wèn)方式徒像;比如電腦機(jī)箱、筆記本等
好處:
將變化隔離蛙讥;
方便使用;
提高復(fù)用性灭衷;
提高安全性
6次慢、關(guān)鍵字private:封裝在代碼中的體現(xiàn)
(1)私有的意思,權(quán)限修飾符
(2)用來(lái)修飾成員變量和成員函數(shù)
(3)用private修飾的成員只在本類(lèi)中有效
(4)私有是封裝的一種體現(xiàn)
7翔曲、構(gòu)造方法:
(1)特點(diǎn):
方法名與類(lèi)名相同
沒(méi)有返回類(lèi)型
沒(méi)有返回值
(2)作用:構(gòu)造函數(shù)是用于創(chuàng)建對(duì)象迫像,并對(duì)其進(jìn)行初始化賦值,對(duì)象一建立就自動(dòng)調(diào)用相對(duì)應(yīng)的構(gòu)造函數(shù)瞳遍,
(3)構(gòu)造方法的注意事項(xiàng):
A:如果一個(gè)自定義類(lèi)沒(méi)有構(gòu)造方法闻妓,系統(tǒng)會(huì)默認(rèn)給出一個(gè)無(wú)參構(gòu)造方法。
B:如果一個(gè)自定義類(lèi)提供了構(gòu)造方法掠械,那么由缆,系統(tǒng)將不再給出無(wú)參構(gòu)造方法注祖。
這個(gè)時(shí)候,你可以不使用無(wú)參構(gòu)造方法均唉。
如果你想使用是晨,那么,就必須手動(dòng)給出無(wú)參構(gòu)造方法舔箭。
建議:一般情況下罩缴,我們的自定義類(lèi)都要手動(dòng)給出無(wú)參構(gòu)造方法。
(4)構(gòu)造方法和成員方法的區(qū)別
A:格式區(qū)別
構(gòu)造方法和類(lèi)名相同层扶,并且沒(méi)有返回類(lèi)型箫章,也沒(méi)有返回值。
普通成員方法可以任意起名镜会,必須有返回類(lèi)型檬寂,可以沒(méi)有返回值。
B:作用區(qū)別
構(gòu)造方法用于創(chuàng)建對(duì)象稚叹,并進(jìn)行初始化值焰薄。
普通成員方法是用于完成特定功能的。
C:調(diào)用區(qū)別
構(gòu)造方法是在創(chuàng)建對(duì)象時(shí)被調(diào)用的扒袖,一個(gè)對(duì)象建立塞茅,只調(diào)用一次相應(yīng)構(gòu)造函數(shù)
普通成員方法是由創(chuàng)建好的對(duì)象調(diào)用,可以調(diào)用多次
8季率、構(gòu)造代碼塊:
(1)作用:給對(duì)象進(jìn)行初始化野瘦,對(duì)象一建立就執(zhí)行,而且優(yōu)先于構(gòu)造函數(shù)執(zhí)行
(2)構(gòu)造代碼塊和構(gòu)造函數(shù)的區(qū)別:
構(gòu)造代碼塊是給所有不同對(duì)象的共性進(jìn)行統(tǒng)一初始化
構(gòu)造函數(shù)是給對(duì)應(yīng)的對(duì)象進(jìn)行初始化
9飒泻、this關(guān)鍵字
(1)this關(guān)鍵字代表本類(lèi)對(duì)象的一個(gè)引用鞭光,誰(shuí)調(diào)用this所在的方法,this就代表誰(shuí)
(2)this的使用場(chǎng)景
A:用于區(qū)分同名成員變量和局部變量泞遗;
B:在定義函數(shù)時(shí)惰许,該函數(shù)內(nèi)部要用到調(diào)用該函數(shù)的對(duì)象時(shí),因?yàn)榇藭r(shí)對(duì)象還沒(méi)建立史辙,故this代表此對(duì)象
B:構(gòu)造函數(shù)間調(diào)用
**這個(gè)時(shí)候汹买,this(參數(shù))必須作為第一條語(yǔ)句存在。
10聊倔、Person p = new Person();在內(nèi)存中做了哪些事情晦毙。
(1)將Person.class文件加載進(jìn)內(nèi)存中。
(2)如果p定義在主方法中耙蔑,那么见妒,就會(huì)在棧空間開(kāi)辟一個(gè)變量空間p甸陌。
(3)在堆內(nèi)存給對(duì)象分配空間须揣。
(4)對(duì)對(duì)象中的成員進(jìn)行默認(rèn)初始化盐股。
(5)對(duì)對(duì)象中的成員進(jìn)行顯示初始化。
(6)調(diào)用構(gòu)造代碼塊對(duì)對(duì)象進(jìn)行初始化返敬。(如果沒(méi)有就不執(zhí)行)
(7)調(diào)用構(gòu)造方法對(duì)對(duì)象進(jìn)行初始化遂庄。對(duì)象初始化完畢。
(8)將對(duì)象的內(nèi)存地址賦值給p變量劲赠,讓p變量指向該對(duì)象涛目。
11、static關(guān)鍵字:
(1)靜態(tài)的意思凛澎,用來(lái)修飾成員變量和成員函數(shù)
(2)靜態(tài)的特點(diǎn):
隨著類(lèi)的加載而加載
優(yōu)先于對(duì)象存在
對(duì)所有對(duì)象共享
可以被類(lèi)名直接調(diào)用
(3)靜態(tài)的注意事項(xiàng)
A:靜態(tài)方法只能訪問(wèn)靜態(tài)成員
為什么:因?yàn)殪o態(tài)的內(nèi)容是隨著類(lèi)的加載而加載霹肝,它是先進(jìn)內(nèi)存的。
B:靜態(tài)方法中不能使用this,super關(guān)鍵字
C:主方法是靜態(tài)的
public static void main(String[] args)
public:公共的意思塑煎,是最大權(quán)限修飾符沫换。
static:由于jvm調(diào)用main方法的時(shí)候,沒(méi)有創(chuàng)建對(duì)象最铁。
只能通過(guò)類(lèi)名調(diào)用讯赏。所以,main必須用static修飾冷尉。
void:由于main方法是被jvm調(diào)用漱挎,不需要返回值。用void修飾雀哨。
main:main是主要的意思磕谅,所以jvm采用了這個(gè)名字。是程序的入口雾棺。
String[]:字符串?dāng)?shù)組
args:數(shù)組名
在運(yùn)行的時(shí)候膊夹,通過(guò)java命令給args數(shù)組賦值。
格式:java MainTest hello world itcast
(4)靜態(tài)變量和成員變量的區(qū)別
A:調(diào)用方式
靜態(tài)變量也稱(chēng)為類(lèi)變量捌浩,可以直接通過(guò)類(lèi)名調(diào)用放刨。也可以通過(guò)對(duì)象名調(diào)用。
這個(gè)變量屬于類(lèi)尸饺。
成員變量也稱(chēng)為實(shí)例變量宏榕,只能通過(guò)對(duì)象名調(diào)用。這個(gè)變量屬于對(duì)象侵佃。
B:存儲(chǔ)位置
靜態(tài)變量存儲(chǔ)在方法區(qū)長(zhǎng)中的靜態(tài)區(qū)。
成員變量存儲(chǔ)在堆內(nèi)存奠支。
C:生命周期
靜態(tài)變量隨著類(lèi)的加載而存在馋辈,隨著類(lèi)的消失而消失。生命周期長(zhǎng)倍谜。
成員變量隨著對(duì)象的創(chuàng)建而存在迈螟,隨著對(duì)象的消失而消失叉抡。
D:與對(duì)象的相關(guān)性
靜態(tài)變量是所有對(duì)象共享的數(shù)據(jù)。
成員變量是每個(gè)對(duì)象所特有的數(shù)據(jù)答毫。
(5)靜態(tài)的優(yōu)點(diǎn)和弊端
優(yōu)點(diǎn):
對(duì)對(duì)象的共享數(shù)據(jù)進(jìn)行單獨(dú)空間的存儲(chǔ)褥民,節(jié)省內(nèi)存,沒(méi)有必要每個(gè)對(duì)象都存儲(chǔ)一份
可直接被類(lèi)名調(diào)用
弊端:
生命周期過(guò)長(zhǎng)洗搂,隨著類(lèi)的消失而消失
訪問(wèn)出現(xiàn)權(quán)限消返,即靜態(tài)雖好但只能訪問(wèn)靜態(tài)
(6)什么使用使用靜態(tài)呢?
A:當(dāng)所有對(duì)象共享某個(gè)數(shù)據(jù)的時(shí)候耘拇,就把這個(gè)成員變量定義為靜態(tài)修飾的撵颊。
B:當(dāng)某個(gè)方法沒(méi)有訪問(wèn)該類(lèi)中的非靜態(tài)成員,就可以把這個(gè)方法定義為靜態(tài)修飾惫叛。
靜態(tài)的生命周期比較長(zhǎng)倡勇,所以一般不推薦使用。
(7)靜態(tài)代碼塊
A:它只執(zhí)行一次嘉涌,它比main還先執(zhí)行妻熊。
B:執(zhí)行順序
靜態(tài)代碼塊–構(gòu)造代碼塊–構(gòu)造方法
12、制作API(次重點(diǎn))
API(全拼):Application Program Interface 應(yīng)用程序編程接口仑最。
(1)類(lèi)中的內(nèi)容需要用文檔注釋扔役。
(2)使用JDK\bin目錄下的javadoc工具。
格式:javadoc -d 目錄 -author -version ArrayTool.java
13词身、單例設(shè)計(jì)模式:
(1)設(shè)計(jì)模式:
解決某類(lèi)問(wèn)題行之有效的方法厅目,是一種思想,是規(guī)律的總結(jié)
(2)用來(lái)保證某個(gè)類(lèi)在內(nèi)存中只有一個(gè)對(duì)象
(3)保證唯一性的思想及步驟
**為了避免其他程序建立該類(lèi)對(duì)象法严,先禁止其他程序建立該類(lèi)對(duì)象损敷,即將構(gòu)造函數(shù)私有化
**為了其他程序訪問(wèn)到該類(lèi)對(duì)象,須在本類(lèi)中創(chuàng)建一個(gè)該類(lèi)私有對(duì)象
**為了方便其他程序訪問(wèn)到該類(lèi)對(duì)象深啤,可對(duì)外提供一個(gè)公共訪問(wèn)方式
比如API中的Runtime類(lèi)就是單例設(shè)計(jì)模式拗馒。
(4)單例設(shè)計(jì)模式的兩種方式
A:餓漢式 當(dāng)類(lèi)加載的時(shí)候,就創(chuàng)建對(duì)象溯街。
class Student
? ? ? ? {
? ? ? ? ? ? private Student(){}
? ? ? ? ? ? private static final Student s = new Student();
? ? ? ? ? ? public static Student getInstance()
? ? ? ? ? ? {
? ? ? ? ? ? ? ? return s;
? ? ? ? ? ? }
? ? ? ? }
B:懶漢式 當(dāng)使用的使用诱桂,才去創(chuàng)建對(duì)象。
class Student
? ? ? ? {
? ? ? ? ? ? private Student(){}
? ? ? ? ? ? private static final Student s = null;
? ? ? ? ? ? public static Student getInstance()
? ? ? ? ? ? {
? ? ? ? ? ? ? ? if(s==null)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? //線程1就進(jìn)來(lái)了呈昔,線程2就進(jìn)來(lái)了挥等。
? ? ? ? ? ? ? ? ? ? s = new Student();
? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? return s;
? ? ? ? ? ? }
? ? ? ? }
餓漢式和懶漢式**
是類(lèi)一加載進(jìn)內(nèi)存就創(chuàng)建好了對(duì)象;
懶漢式則是類(lèi)才加載進(jìn)內(nèi)存的時(shí)候堤尾,對(duì)象還沒(méi)有存在肝劲,只有調(diào)用了getInstance()方法時(shí),
對(duì)象才開(kāi)始創(chuàng)建。
**
懶漢式是延遲加載辞槐,如果多個(gè)線程同時(shí)操作懶漢式時(shí)就有可能出現(xiàn)線程安全問(wèn)題掷漱,解決線程安全問(wèn)題
可以加同步來(lái)解決。但是加了同步之后榄檬,每一次都要比較鎖卜范,效率就變慢了,
所以可以加雙重判斷來(lái)提高程序效率鹿榜。
注:開(kāi)發(fā)常用餓漢式海雪,因?yàn)轲I漢式簡(jiǎn)單安全。懶漢式多線程的時(shí)候容易發(fā)生問(wèn)題Math類(lèi)的使用(重點(diǎn))
(1)數(shù)學(xué)操作類(lèi):該類(lèi)沒(méi)有構(gòu)造函數(shù)犬缨,方法均為靜態(tài)的
(2)掌握內(nèi)容
A:成員變量
**E:比任何其他值都更接近e(即自然對(duì)數(shù)的底數(shù))的double值喳魏。
**PI:比任何其他值都更接近pi(即圓的周長(zhǎng)與直徑之比)的double值。
B:成員方法
**static double abs(double a)
返回 double 值的絕對(duì)值怀薛。返回絕對(duì)值
**static double ceil(double a)
返回最小的(最接近負(fù)無(wú)窮大)double 值刺彩,該值大于等于參數(shù),并等于某個(gè)整數(shù)枝恋。
**static double floor(double a)
返回最大的(最接近正無(wú)窮大)double 值创倔,該值小于等于參數(shù),并等于某個(gè)整數(shù)焚碌。
**max:返回兩個(gè)值中較大的那個(gè)
**min:返回兩個(gè)值中較小的那個(gè)
**static long round(double a) 返回最接近參數(shù)的 long畦攘。
static int round(float a) 返回最接近參數(shù)的 int。
**static double random()
返回帶正號(hào)的 double 值十电,該值大于等于 0.0 且小于 1.0知押。
**static double pow(double a, double b)
返回第一個(gè)參數(shù)的第二個(gè)參數(shù)次冪的值。
**static double sqrt(double a)
返回正確舍入的 double 值的正平方根鹃骂。
15台盯、Random類(lèi)的使用(重點(diǎn))
(1)產(chǎn)生隨機(jī)數(shù)的類(lèi)
(2)掌握內(nèi)容
A:構(gòu)造方法
**Random() 創(chuàng)建一個(gè)新的隨機(jī)數(shù)生成器。
**Random(long seed) 使用單個(gè) long 種子創(chuàng)建一個(gè)新的隨機(jī)數(shù)生成器畏线。
B:成員方法
**int nextInt() 返回下一個(gè)偽隨機(jī)數(shù)静盅,它是此隨機(jī)數(shù)生成器的序列中均勻分布的 int 值。
**int nextInt(int n) 返回一個(gè)偽隨機(jī)數(shù)寝殴,它是取自此隨機(jī)數(shù)生成器序列的蒿叠、
在 0(包括)和指定值(不包括)之間均勻分布的 int 值。
16蚣常、Scanner類(lèi)的使用
(1)可以獲取從鍵盤(pán)的輸入數(shù)據(jù)
(2)掌握內(nèi)容
構(gòu)造方法:
Scanner(InputStream source) 構(gòu)造一個(gè)新的 Scanner市咽,它生成的值是從指定的輸入流掃描的。
如:Scanner sc = new Scanner(http://System.in);
方法摘要
sc.nextInt();獲取整型數(shù)據(jù)
sc.nextLine();獲取字符串?dāng)?shù)據(jù)
17抵蚊、繼承(重點(diǎn))
(1)把很多類(lèi)的相同特征和行為進(jìn)行抽取魂务,用一個(gè)類(lèi)來(lái)描述曼验。讓多個(gè)類(lèi)和這個(gè)類(lèi)產(chǎn)生一個(gè)關(guān)系。
這樣的話(huà)粘姜,多個(gè)類(lèi)就可以省略很多代碼。這個(gè)關(guān)系就是繼承熔酷。java中用extends關(guān)鍵字表示孤紧。
(2)繼承的體系結(jié)構(gòu)
A:多個(gè)具體的對(duì)象,不斷的向上抽取共享的內(nèi)容拒秘,最終形成了一個(gè)體系号显。這個(gè)體系叫做繼承體系。
B:繼承體系的學(xué)習(xí)和使用原則
**學(xué)習(xí)頂層的內(nèi)容躺酒。因?yàn)樗钦麄€(gè)體系的共性?xún)?nèi)容押蚤。
**創(chuàng)建子類(lèi)使用。也就是使用底層的具體對(duì)象羹应。
(3)繼承的特點(diǎn):
A:java中只能單繼承揽碘,沒(méi)有多繼承。
B:java可以有多重(層)繼承园匹。
(4)繼承的好處:
繼承的出現(xiàn)提高了代碼的復(fù)用性雳刺。
繼承的出現(xiàn)讓類(lèi)與類(lèi)之間產(chǎn)生了關(guān)系,提供了多態(tài)的前提裸违。
(5)子父類(lèi)中的成員關(guān)系
A:成員變量
在子類(lèi)方法中使用一個(gè)變量時(shí):
首先掖桦,在方法的局部變量中找這個(gè)變量,有則使用供汛。
否則枪汪,在本類(lèi)中找成員變量,有則使用怔昨。
否則雀久,在父類(lèi)中找成員變量,有則使用朱监。
否則岸啡,報(bào)錯(cuò)。
B:成員方法
用子類(lèi)對(duì)象使用一個(gè)方法時(shí)赫编。
首先巡蘸,在子類(lèi)中找這個(gè)方法,有則使用擂送。
否則悦荒,在父類(lèi)中找這個(gè)方法,有則使用嘹吨。
否則搬味,報(bào)錯(cuò)。
--------------------- 本文來(lái)自 joysanctuary 的CSDN 博客 ,全文地址請(qǐng)點(diǎn)擊:https://blog.csdn.net/xingkonglfs/article/details/54695622?utm_source=copy