java.lang.Void 와 void 의 비교 및 사용
3244 단어 Java
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 TYPE = (Class) 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 형식 으로 되 돌아 가 는 방법 명 을 인쇄 합 니 다.
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
결 과 를 저장 하 는 데 사용 합 니 다.Future 의 get 방법 은 결 과 를 되 돌려 줍 니 다(유형 은 T).하지만 조작 이 값 을 되 돌려 주지 않 았 다 면?이 경우
Future
로 표시 할 수 있다.get 호출 후 결과 계산 이 완료 되면 null 로 돌아 갑 니 다.또한 Void 는 값 이 없 는 Map 에 도 사 용 됩 니 다.예 를 들 어
Map
이렇게 map 는Set
똑 같은 기능 을 가지 게 됩 니 다.따라서 범 형 을 사용 할 때 함수 가 결 과 를 되 돌려 주지 않 거나 대상 이 값 이 필요 하지 않 을 때 자바.lang.Void 형식 으로 표시 할 수 있 습 니 다.
참고:
java.lava.Void 와 void 의 비교,http://stackoverflow.com/questions/10839042/what-is-the-difference-between-java-lang-void-and-void
함수 반환 void 를 어떻게 판단 합 니까?http://stackoverflow.com/questions/1924253/how-to-determine-by-reflection-if-a-method-returns-void
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JPA + QueryDSL 계층형 댓글, 대댓글 구현(2)이번엔 전편에 이어서 계층형 댓글, 대댓글을 다시 리팩토링해볼 예정이다. 이전 게시글에서는 계층형 댓글, 대댓글을 구현은 되었지만 N+1 문제가 있었다. 이번에는 그 N+1 문제를 해결해 볼 것이다. 위의 로직은 이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.