programing tip

Java 제네릭 클래스를 만들 때 꺾쇠 괄호로 묶은 의미는 무엇입니까?

itbloger 2020. 7. 17. 20:58
반응형

Java 제네릭 클래스를 만들 때 꺾쇠 괄호로 묶은 의미는 무엇입니까?


JMockit 예제를 읽고이 코드를 찾았습니다.

final List<OrderItem> actualItems = new ArrayList<~>();

일반 식별자의 물결표는 무엇을 의미합니까? 나는 그것이 단항 비트 NOT 연산자라는 것을 알고 있지만 여기에는 피연산자가 보이지 않습니다.

또한 컴파일을 시도했지만 오류가 발생했습니다. 방금 뭔가 빠졌습니까?


"선언과 동일"의 약어입니다.

IntelliJ와 같은 일부 IDE도 이것을 사용합니다.

디스크의 파일에는이 표기법이 없으며 이는 IDE GUI의 압축입니다.


물결표가 없다면 코드는 이미 Java 7이라고 말하고 싶습니다. Java 7은 다이아몬드 연산자를 허용 하므로 합법적 인 Java 코드가됩니다.

Map<String, List<String>> map = new HashMap<>();

(그러나-이 구문에는 물결표가 없습니다)


IntelliJ IDEA에서 ~여기 :

Set<String> associations = new LinkedHashSet<~>();

의미 String는 왼쪽 선언과 동일합니다.


나는 그것이 유형이 무엇이든,이 경우 OrderItem 을 의미하는 속기라고 생각합니다 .

참고 : https://stackoverflow.com/questions/4887876/what-does-a-tilde-in-angle-brackets-mean-when-creating-a-java-generic-class

반응형