這篇文章主要介紹了java.lang.Void與void怎么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
void不是函數,是方法的修飾符,void的意思是該方法沒有返回值,意思就是方法只會運行方法中的語句,但是不返回任何東西。
java.lang.Void是一種類型。例如給Void引用賦值null。
Void nil = null;
通過Void類的代碼可以看到,Void類型不可以繼承與實例化。
public final
class Void {
/**
* The {@code Class} object representing the pseudo-type corresponding to
* the keyword {@code void}.
*/
@SuppressWarnings("unchecked")
public static final Class<Void> TYPE = (Class<Void>) Class.getPrimitiveClass("void");
/*
* The Void class cannot be instantiated.
*/
private Void() {}
}Void作為函數的返回結果表示函數返回null(除了null不能返回其它類型)。
Void function(int a, int b) {
//do something
return null;
}在泛型出現之前,Void一般用于反射之中。例如,下面的代碼打印返回類型為void的方法名。
public class Test {
public void print(String v) {}
public static void main(String args[]){
for(Method method : Test.class.getMethods()) {
if(method.getReturnType().equals(Void.TYPE)) {
System.out.println(method.getName());
}
}
}
}泛型出現后,某些場景下會用到Void類型。例如Future<T>用來保存結果。Future的get方法會返回結果(類型為T)。
但如果操作并沒有返回值呢?這種情況下就可以用Future<Void>表示。當調用get后結果計算完畢則返回后將會返回null。
另外Void也用于無值的Map中,例如Map<T,Void>這樣map將具Set<T>有一樣的功能。
因此當你使用泛型時函數并不需要返回結果或某個對象不需要值時候這是可以使用java.lang.Void類型表示。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“java.lang.Void與void怎么用”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。