> Java > java지도 시간 > Java 9에서 MethodHandles 클래스의 중요성은 무엇입니까?

Java 9에서 MethodHandles 클래스의 중요성은 무엇입니까?

WBOY
풀어 주다: 2023-08-25 17:21:09
앞으로
1173명이 탐색했습니다.

在Java 9中,MethodHandles类的重要性是什么?

MethodHandles 클래스는 Java 7 버전에서 도입되었습니다. 이 클래스는 주로 일부 정적 메소드 를 추가하여 기능을 향상시키며, 메소드와 필드에 액세스하기 위한 메소드 핸들을 생성하기 위한 메소드 찾기 , 기존 메소드 핸들을 결합하거나 새 메소드 핸들로 변환하기 위한 결합 메소드 등 여러 범주로 나뉩니다. 및 기타 일반적인 JVM 작업이나 제어 흐름 패턴을 시뮬레이션하는 메서드 핸들을 생성하기 위한 팩토리 메서드입니다. Java 9에서는 MethodHandles 클래스가 향상되었고 많은 변경 사항이 도입되었으며 arrayLength(), arrayConstructor(), zero() 등과 같은 새로운 정적 메서드가 추가되었습니다.

Grammar

<strong>public class MethodHandles extends Object</strong>
로그인 후 복사

Example

의 중국어 번역은

Example

import java.lang.invoke.MethodHandle;
import java.lang.invoke.MethodHandles;

public class MethodHandlesTest {
   public void MethodHandle1() {
      try {
         <strong>MethodHandle </strong>methodHandleLength = <strong>MethodHandles</strong>.<strong>arrayLength</strong>(int[].class);
         int[] array = new int[] {5, 10, 15, 20};
         int arrayLength = (int) methodHandleLength.<strong>invoke</strong>(array);
         System.out.println("Length of Array using Method Handle is: " + arrayLength);

         <strong>MethodHandle </strong>methodHandleConstructor = <strong>MethodHandles.arrayConstructor</strong>(int[].class);
         int[] newArray = (int[]) methodHandleConstructor.<strong>invoke</strong>(3);
         System.out.println("Array Constructed using Method Handle of Size: " + newArray.length);

         int x = (int) <strong>MethodHandles.zero</strong>(int.class).<strong>invoke()</strong>;
         System.out.println("Default Value of Primitive Integer using Method Handles is: " + x);
         String y = (String) <strong>MethodHandles.zero</strong>(String.class).<strong>invoke()</strong>;
         System.out.println("Default Value of String using Method Handles is: " + y);
      } catch(Throwable e) {
         e.printStackTrace();
      }
   }
   public static void main(String args[]) {
      new MethodHandlesTest().MethodHandle1();
   }
}
로그인 후 복사

Output

<strong>Length of Array using Method Handle is: 4
Array Constructed using Method Handle of Size: 3
Default Value of Primitive Integer using Method Handles is: 0
Default Value of String using Method Handles is: null</strong>
로그인 후 복사
입니다.

위 내용은 Java 9에서 MethodHandles 클래스의 중요성은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿