18 일 자바 학습-11.대상 프로 그래 밍 06-자바 의 내부 클래스 및 대상 배열


1.자바 의 내부 클래스 메커니즘
      내부 클래스 란 한 클래스 의 내부 에 또 다른 클래스 의 정의 가 있다 는 것 을 말한다.자바 에 서 는 클래스 의 내부 클래스 를 정의 할 수도 있 고 방법 내부 에서 클래스 를 정의 할 수도 있다.
      첫 번 째 형식,즉 유형의 내부 정 의 는 새로운 유형 으로 비교적 간단 하 다.예 를 들 어 다음 과 같다.      
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 class Outer // {      private String name = "newsainton" ;              class Inner //      {          // name, .          public void printName()          {              System.out.println( "name = " +name);          }      }              // ,      public void print()      {          new Inner().printName();      } } class OODemo04 {      public static void main(String args[])      {          //          Outer out = new Outer();          //          out.print();      } }
      두 번 째 방법 에 대해 체 내 에서 내부 류 를 정의 할 때 주의해 야 할 점 은 바로 방법 체 내 에서 정 의 된 내부 류 는 외부 류 의 임 의 속성 을 방문 할 수 있 지만 방법 중의 매개 변수 변 수 를 직접 방문 할 수 없다 는 것 이다.
       내부 클래스 접근 방법의 매개 변수 변 수 를 필요 로 한다 면 방법 매개 변수 앞 에'final'키 워드 를 추가 해 야 합 니 다.
       예 를 들 면 다음 과 같다.      
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 class Outer // {      private String name = "newsainton" ;      public void fun( final int i) //      {          // i j, i&j final          final int j = 10 ;          class Inner //          {              // name, .              public void printName()              {                  System.out.println( "name = " +name);                  System.out.println( "i + j = " +(i+j));              }          }          new Inner().printName();      } } class OODemo05 {      public static void main(String args[])      {          //          Outer out = new Outer();          //          out.fun( 13 );      } }
      내부 클래스 를 사용 하 는 장단 점 은:
(1)장점:내부 클래스 를 사용 하면 외부 클래스 의 개인 속성 을 직접 방문 할 수 있다.
(2)단점:내부 클래스 를 포함 한 프로그램 으로 코드 구조 가 좋 지 않다.
 2.자바 의 대상 배열
      대상 배열 의 개념 응용 은 거의 배열 과 일치 합 니 다.다른 것 은 대상 배열 은 같은 유형의 대상 으로 구 성 된 집합 이기 때문에 초기 화 할 때 대상 의 기본 값 은 null 입 니 다.
      배열 형식 과 마찬가지 로 대상 배열 의 성명 과 초기 화 는 다음 과 같 습 니 다.  클래스 이름[]대상 배열 이름=new 클래스 이름[대상 개수]의 방법 은 배열 과 유사 합 니 다.예 를 들 어 대상 배열 의 길 이 를 얻 으 려 면 대상 배열 이름.length 를 사용 합 니 다.  O(∩_∩)O~

좋은 웹페이지 즐겨찾기