您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“java關(guān)鍵字的使用方法”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
在平時(shí)寫代碼的時(shí)候我們會(huì)經(jīng)常用到void,我們都知道他代表著方法不返回任何東西,但這只是表面意思,面試的時(shí)候也會(huì)經(jīng)常會(huì)問到,這篇文章有必要對(duì)其進(jìn)行一個(gè)深入的分析。
1、void關(guān)鍵字到底是什么類型?
java不像是php這些弱類型的語言,java語言是強(qiáng)類型的,意思就是說我們的方法必須要有一個(gè)確定類型的返回值,舉個(gè)例子
public String test(){};
上面這個(gè)test方法有一個(gè)String類型的返回值,我們也可以返回int等基礎(chǔ)類型的。不管返回什么都要返回一個(gè)確定的類型。
現(xiàn)在?。?!出現(xiàn)了一個(gè)問題,我們的方法也可以返回void,那么void肯定也是一種數(shù)據(jù)類型吧。但是java好像只提供了兩種數(shù)據(jù)類型:基本數(shù)據(jù)類型和引用數(shù)據(jù)類型。那這個(gè)void到底是什么呢?其實(shí)你可以把他理解成一個(gè)特殊的數(shù)據(jù)類型也可以理解成一個(gè)方法的修飾符。
2、從Void看void
我們的基礎(chǔ)類型好像都有一個(gè)封裝類,比如int基本類型的封裝類是Integer,char基本類型的封裝類是Character,void也不例外,他也有一個(gè)封裝類叫做Void,沒錯(cuò)就是把“v”換成了大寫的V。你可以這樣去理解Void:
其實(shí)Void類是一個(gè)不可實(shí)例化的占位符類,用來保存一個(gè)引用代表Java關(guān)鍵字void的Class對(duì)象。
Void類型不可以繼承和實(shí)例化。而且修飾方法時(shí)候必須返回null。
下面我們?cè)賮硌芯垦芯窟@個(gè)Void。
(1)確定類型:Void是一個(gè)類,void就是一個(gè)基本類型
public class Test {
public static void main(String[] args) {
System.out.println(Void.class);
System.out.println(void.class);
}
}
//output
//class java.lang.Void
//void
(2)基本使用:必須且只能返回null
public class Test {
//返回void,return可有可無
public void a1() {
return;
}
//必須且只能返回null
public Void a2() {
return null;
}
}
(3)使用場(chǎng)景:在反射中確定某個(gè)函數(shù)的返回類型
public class Test {
// 在這里定義兩個(gè)方法:
//(1)a方法返回void
//(2)b方法返回int
public void a() {}
public int b() {
return 1;
}
public static void main(String args[]) {
for (Method method : Test.class.getMethods()) {
if (method.getReturnType().equals(Void.TYPE)) {
System.out.println("返回void的方法是:"+method.getName());
}
else if(method.getReturnType().equals(Integer.TYPE)) {
System.out.println("返回int的方法是:"+method.getName());
}
}
}
}
//output
//返回void的方法是:main
//返回int的方法是:b
//返回void的方法是:a
(4)使用場(chǎng)景:泛型中使用
Future
Void也用于無值的Map中,例如Map<,Void>這樣map將具Set有一樣的功能。
“java關(guān)鍵字的使用方法”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(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)容。