您好,登錄后才能下訂單哦!
這篇文章主要介紹“Java的構(gòu)造方法怎么使用”,在日常操作中,相信很多人在Java的構(gòu)造方法怎么使用問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Java的構(gòu)造方法怎么使用”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
類與對(duì)象: 類是對(duì)象的模板,對(duì)象是類的實(shí)例
方法的定義 修飾符 返回值 方法名(參數(shù)名){ return 返回值;}
方法調(diào)用 1,類名.方法名 2,對(duì)象.方法
方法重載(overload) 名字相同,參數(shù)列表不同 例如 System.out.println()
命令行傳參 --JVM調(diào)優(yōu)
可變長(zhǎng)參數(shù) ... 必須放在最后一個(gè)參數(shù)
遞歸
域名倒寫
import
幫助文檔
javadoc
@author @Version @Since
@param @return @throws
其中cmd命令:
javadoc -encoding utf-8 -charset utf-8 HelloWorld.java
涉及到構(gòu)造方法重載,new Car() 參數(shù)不同,構(gòu)造的對(duì)象也不同
默認(rèn)是無參構(gòu)造器,若手動(dòng)定義有參構(gòu)造器,則必須再手動(dòng)定義一個(gè)無參構(gòu)造器
單例模式,必須將構(gòu)造器私有化
class Singleton{ //1.私有化構(gòu)造器 private Singleton(){ } // 2.內(nèi)部創(chuàng)建類的對(duì)象 private static Singleton instance = new Singleton(); // 3.提供公共的靜態(tài)方法,獲取類的實(shí)例 public static Singleton getInstance(){ return instance; } }
棧存放引用,堆存放具體的對(duì)象
Java虛擬機(jī)的內(nèi)存可以分為三個(gè)區(qū)域:棧Stack、堆Heap、方法區(qū)Method area
棧屬于線程私有,不能實(shí)現(xiàn)線程間的共享! 棧描述的是方法執(zhí)行的內(nèi)存模型;每個(gè)方法被調(diào)用都會(huì)創(chuàng)建一個(gè)棧幀(存儲(chǔ)局部變量、操作數(shù)、方法出口等) JVM為每個(gè)線程創(chuàng)建一個(gè)棧,用于存放該線程執(zhí)行方法的信息(實(shí)際參數(shù)、局部變量等) 棧是由系統(tǒng)自動(dòng)分配,速度快,棧是一個(gè)連續(xù)的內(nèi)存空間
JVM只有一個(gè)堆,被所有線程共享 堆用于存儲(chǔ)創(chuàng)建好的對(duì)象和數(shù)組(數(shù)組也是對(duì)象); 堆是一個(gè)不連續(xù)的內(nèi)存空間,分配靈活,速度慢
JVM只有一個(gè)方法區(qū),被所有線程共享 方法區(qū)實(shí)際也是堆,只是用于存儲(chǔ)類、常量相關(guān)的信息! 用來存放程序中永遠(yuǎn)是不變或唯一的內(nèi)容。( 類信息 [class對(duì)象]、靜態(tài)變量、字符串常量等)
屬性私有,提供對(duì)應(yīng)的get、set方法
extends關(guān)鍵字
Object是全部類的父類
子類擁有父類的全部特性(包含子類的方法重寫)
this 與super的關(guān)系
父類的引用指向子類的對(duì)象(前提是:需要有繼承以及父子類方法的重寫)
instance of關(guān)鍵字的使用,如果匹配,可以進(jìn)行類型的轉(zhuǎn)換
public、protected、private、default、static、final、abstract
其中前四個(gè),是對(duì)方法、屬性訪問范圍的規(guī)定
static 靜態(tài)
final
修飾變量:變量一旦被賦值,就不能再被賦值
修飾方法: 方法不可被重寫(繼承中會(huì)出現(xiàn))
修飾類:該類不能被繼承,比如Math、String等類
abstract
修飾方法:只有方法名,沒有方法體
修飾類:包含抽象方法的類必須是抽象類,通過抽象類,就使得繼承子類必須自己定義方法的具體實(shí)現(xiàn)(有點(diǎn)“接口”的意思)
那么抽象類用來干嘛?
它只用來繼承,其中的方法必須被子類實(shí)現(xiàn);它不能被實(shí)例化,即無法new()
接口比抽象類更抽象(抽象類還能有具體的實(shí)現(xiàn),接口完全不能有實(shí)現(xiàn))
是一種約束,只能定義方法名;
子類實(shí)現(xiàn)接口,必須具體實(shí)現(xiàn)其中的方法
只有一種方法的接口我們稱為函數(shù)式接口,可以使用lambda表達(dá)式進(jìn)行簡(jiǎn)化
接口可以實(shí)現(xiàn)多繼承,但是類只能單繼承
局部?jī)?nèi)部類
靜態(tài)內(nèi)部類
匿名內(nèi)部類(不需要?jiǎng)?chuàng)建新的對(duì)象)
總接口:Throwable
exception
其中"運(yùn)行時(shí)異常"包含NullPointer、下標(biāo)越界異常、ClassNotFound
error
JVM錯(cuò)誤,包含StackOverflow、OutOfMemory
五個(gè)關(guān)鍵字
try、catch、finally、throw、throws
到此,關(guān)于“Java的構(gòu)造方法怎么使用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。