나는 모두 동일한 추상 클래스를 확장하는 6 개의 클래스가 있습니다. 추상 클래스에는 클래스의 인스턴스화 당 한 번만로드하려는 일부 JNI 코드를 가리키는 정적 변수가 있습니다.추상 클래스에서 정적 변수 상속
내가 알기로는이 정적 변수의 인스턴스 하나가 인스턴스화된다는 것을 알지만, 각 확장 클래스는 주어진 자식 클래스에 고유 한 변수의 정적 인스턴스를 갖기를 원합니다. 추상 클래스를 수정하거나 추상 클래스를 해제하는 코드를 작성하고 싶습니다. 한 번에이 두 가지를 모두 할 수 있습니까?
예를 들어 변수 foo가있는 추상 클래스 막대와 foo의 내용을 인쇄하는 printFoo 메소드를 작성할 수 있습니다. 그렇다면 fooBar1, fooBar2 및 fooBar3 순서로 인스턴스화합니다. 각각은 bar 클래스를 확장하고 foo를 정적 블록의 다른 값으로 초기화합니다. foobar1.printFoo
을 호출하면 foo의 정적 값을 fooBar1 생성자로 초기화하여 출력하고 싶습니다.
java로 수행 할 수 있습니까?
제 1 단락에서 브래킷을 닫으면 저를 미치게됩니다! – HXCaine
'일부 코드를 가리키는 정적 변수'. 좀 더 설명해 주시겠습니까? Java 코드를 어떻게 가리 킵니까? – mdma
OpenCL GPU 코드 주위에 JNI 래퍼 인 jocl을 사용하고 있습니다. GPU에게 무엇을해야하는지 알려면 실행될 코드를 가리키는 CL_program을 만들어야합니다.이 코드는 GPU가 사용할 컴파일 된 커널을 나타내는 cl_kernel을 생성합니다. 프로그램 및 커널 변수는 GPU 코드의 JIT 컴파일을 수행하는 데 너무 오래 걸리기 때문에 정적 변수로 사용됩니다. 하지만 다른 것들 중에서 코드를 해제하는 데 사용할 수있는 추상 클래스를 원한다. – drew