자바 : 중첩 된 정적 클래스의 외부 클래스 참조

fiveclubs

다음과 같은 클래스 구조가 있습니다.

public class OuterClass {

    private static class InnerClass {

        public void someMethod() {
            OtherClass.otherMethod(<???>);
        }

}

다른 클래스의 정적 메서드를 나타냅니다 OtherClass.

public class OtherClass {

    public static void otherMethod(OuterClass) {
        ....
    }

}

나는 <???>. 내부 정적 클래스 내에서 외부 클래스의 인스턴스를 어떻게 참조합니까? 내가하고 싶은 this것은 OuterClass.

다리 얀

분명히 OuterClass다음 유형 의 객체가 필요합니다 .

public void someMethod() {
    OuterClass oc = new OuterClass();
    OtherClass.otherMethod(oc);
}

내부 클래스가 정적이 아닌 경우 다음을 수행 할 수 있습니다.

//remove static here
private class InnerClass { 
    public void someMethod() {
        OtherClass.otherMethod(OuterClass.this);
    }
}

중첩 된 클래스 ( 정적비 정적) 의 차이점을 알아야합니다 . 정적 중첩 클래스는 다른 클래스와 마찬가지로 단순히 다른 클래스 내에 정의 된 클래스입니다 (보통 캡슐화 원칙 때문에). 내부 정적 클래스 인스턴스에는 외부 클래스 인스턴스에 대한 지식이 없습니다.

중첩 된 내부 클래스 (비 정적)는 내부 클래스의 객체가 외부 클래스의 인스턴스 내에 존재하도록 요구합니다. 그렇기 때문에 OuterClass.this.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

일반 부모 클래스 내에 중첩 된 클래스 생성자에 대한 함수 참조

분류에서Dev

도출 된 클래스를 통해 자바 정의 정적 내부 클래스, 액세스

분류에서Dev

정적 클래스 자체 참조

분류에서Dev

정적 클래스 자체 참조

분류에서Dev

C ++ 중첩 된 구조체가 외부에있는 클래스 함수 구현

분류에서Dev

정적 중첩 클래스는 외부 클래스의 개인 생성자에 액세스 할 수 있습니다.

분류에서Dev

JUnit4의 정적 내부 테스트 클래스에 대한 중첩 된 테스트 설정

분류에서Dev

자바 스크립트의 중첩 된 개체 범위 및 동적 참조

분류에서Dev

중첩 된 클래스에서 메소드를 참조하는

분류에서Dev

테스트를 위해 클래스 내부에 중첩 된 클래스 모의

분류에서Dev

정적 중첩 클래스

분류에서Dev

부모 클래스의 const 참조를 파생 된 자식 개체로 변환

분류에서Dev

부모 클래스 생성자에서 재정의 된 정적 메서드를 참조하는 방법은 무엇입니까?

분류에서Dev

중첩 클래스 정의

분류에서Dev

정적 클래스 c # 내부에 정적 중첩 클래스 없음

분류에서Dev

클래스 내에 중첩 된 열거 형에 대한 연산자 정의

분류에서Dev

Typescript에서 부모 클래스의 중첩 클래스를 참조하십시오.

분류에서Dev

자바 - 정적 클래스 내부의 비 정적 필드

분류에서Dev

중첩 된 정적 클래스로 인터페이스 모킹

분류에서Dev

클래스 인스턴스화 중에 전달 된 자체 참조 변수

분류에서Dev

자바의 중첩 클래스

분류에서Dev

중첩 클래스 AsyncTask는 외부 클래스 정적 개체를 수정할 수 없습니다.

분류에서Dev

클래스에 정의 된 열거 형은 정적 중첩 클래스입니까?

분류에서Dev

이 중첩 된 클래스 생성자 스 니펫을 일반 클래스에 적용 할 수 있습니까?

분류에서Dev

C #의 중첩 된 분류 된 정적 클래스에서 값 찾기

분류에서Dev

여러 중첩 된 비 정적 내부 클래스를 인스턴스화하는 방법-Java

분류에서Dev

자체 참조 클래스 설정

분류에서Dev

ID 및 클래스 내부에 중첩 된 스타일 지정 속성

분류에서Dev

읽기 전용 Hashtable이있는 중첩 된 내부 클래스가 할당시 Null 참조 예외를 throw합니다.

Related 관련 기사

  1. 1

    일반 부모 클래스 내에 중첩 된 클래스 생성자에 대한 함수 참조

  2. 2

    도출 된 클래스를 통해 자바 정의 정적 내부 클래스, 액세스

  3. 3

    정적 클래스 자체 참조

  4. 4

    정적 클래스 자체 참조

  5. 5

    C ++ 중첩 된 구조체가 외부에있는 클래스 함수 구현

  6. 6

    정적 중첩 클래스는 외부 클래스의 개인 생성자에 액세스 할 수 있습니다.

  7. 7

    JUnit4의 정적 내부 테스트 클래스에 대한 중첩 된 테스트 설정

  8. 8

    자바 스크립트의 중첩 된 개체 범위 및 동적 참조

  9. 9

    중첩 된 클래스에서 메소드를 참조하는

  10. 10

    테스트를 위해 클래스 내부에 중첩 된 클래스 모의

  11. 11

    정적 중첩 클래스

  12. 12

    부모 클래스의 const 참조를 파생 된 자식 개체로 변환

  13. 13

    부모 클래스 생성자에서 재정의 된 정적 메서드를 참조하는 방법은 무엇입니까?

  14. 14

    중첩 클래스 정의

  15. 15

    정적 클래스 c # 내부에 정적 중첩 클래스 없음

  16. 16

    클래스 내에 중첩 된 열거 형에 대한 연산자 정의

  17. 17

    Typescript에서 부모 클래스의 중첩 클래스를 참조하십시오.

  18. 18

    자바 - 정적 클래스 내부의 비 정적 필드

  19. 19

    중첩 된 정적 클래스로 인터페이스 모킹

  20. 20

    클래스 인스턴스화 중에 전달 된 자체 참조 변수

  21. 21

    자바의 중첩 클래스

  22. 22

    중첩 클래스 AsyncTask는 외부 클래스 정적 개체를 수정할 수 없습니다.

  23. 23

    클래스에 정의 된 열거 형은 정적 중첩 클래스입니까?

  24. 24

    이 중첩 된 클래스 생성자 스 니펫을 일반 클래스에 적용 할 수 있습니까?

  25. 25

    C #의 중첩 된 분류 된 정적 클래스에서 값 찾기

  26. 26

    여러 중첩 된 비 정적 내부 클래스를 인스턴스화하는 방법-Java

  27. 27

    자체 참조 클래스 설정

  28. 28

    ID 및 클래스 내부에 중첩 된 스타일 지정 속성

  29. 29

    읽기 전용 Hashtable이있는 중첩 된 내부 클래스가 할당시 Null 참조 예외를 throw합니다.

뜨겁다태그

보관