>  기사  >  Java  >  Java가 범위(일반) 유형을 사용하는 이유는 무엇입니까?

Java가 범위(일반) 유형을 사용하는 이유는 무엇입니까?

little bottle
little bottle원래의
2019-05-29 11:53:083391검색

제네릭이란 무엇인가요? 제네릭은 유형을 매개변수화하는 기능을 나타냅니다. 일반 유형으로 클래스나 메소드를 정의하면 컴파일러는 이를 구체적인 유형으로 대체합니다.

Java가 범위(일반) 유형을 사용하는 이유는 무엇입니까?

제네릭 사용의 장점

Java 언어에 제네릭이 도입됨 장점 안전과 단순성입니다. 제네릭의 장점은 컴파일 중에 유형 안전성이 확인되고 모든 캐스트가 자동으로 암시적으로 수행되어 코드 재사용이 향상된다는 것입니다.

자세히:

1을 입력하세요.

제네릭의 주요 목표는 Java 프로그램의 유형 안전성을 향상시키는 것입니다. 제네릭을 사용하여 정의된 변수의 유형 제한을 알면 컴파일러는 유형 가정을 훨씬 더 높은 수준으로 확인할 수 있습니다. 제네릭이 없으면 이러한 가정은 프로그래머의 마음(또는 운이 좋다면 코드 주석)에만 존재합니다.

2, 캐스트를 제거합니다.

제네릭의 부수적인 이점은 소스 코드에서 많은 캐스트를 제거한다는 것입니다. 이렇게 하면 코드를 더 읽기 쉽게 만들고 오류 가능성을 줄일 수 있습니다.

3. 잠재적인 성능 향상.

제네릭은 더 큰 최적화 가능성을 제공합니다. 제네릭의 초기 구현에서 컴파일러는 생성된 바이트코드에 캐스트(제네릭이 없으면 프로그래머가 이러한 캐스트를 지정함)를 삽입합니다. 그러나 컴파일러에서 더 많은 유형 정보를 사용할 수 있다는 사실은 JVM의 향후 버전에서 최적화 가능성을 열어줍니다. 제네릭이 구현되는 방식으로 인해 제네릭을 지원하려면 JVM이나 클래스 파일을 변경할 필요가 거의 없습니다. 모든 작업은 제네릭(및 캐스트) 없이 작성하는 것과 유사한 코드를 생성하는 컴파일러에서 수행되며 유형이 더 안전합니다.

제네릭 사용에 대한 일부 규칙 및 제한사항

1 제네릭의 유형 매개변수는 단순 유형이 아닌 클래스 유형(사용자 정의 클래스 포함)만 가능합니다.

2. 동일한 제네릭 유형이 여러 버전에 해당할 수 있으며(매개변수 유형이 불확실하기 때문에) 제네릭 클래스 인스턴스의 다른 버전은 호환되지 않습니다.

3. 제네릭은 여러 유형 매개변수를 가질 수 있습니다.

4. 일반 매개변수 유형은 와 같은 확장 문을 사용할 수 있습니다. 관례적으로 "제한된 유형"이 됩니다.

5. 일반 매개변수 유형은 와일드카드 유형일 수도 있습니다. 예를 들어 Class classType = Class.forName(Java.lang.String);

위 내용은 Java가 범위(일반) 유형을 사용하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.