Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 30 | 31 |
Tags
- 알고리즘
- 자바
- 자바스크립트 이벤트처리
- jquery 속성선택자
- 서로소
- 자바 재귀 조합
- Java
- 재귀
- java 내부 클래스
- 상속
- 알고리즘 그래프
- str to char array
- 후위표기
- 자바 조합 재귀
- 조합 재귀
- java lambda
- jquery dom 계층 선택자
- 자바입출력
- char to str
- jquery 이벤트 처리
- 자바스크립트 이벤트중지
- jquery 필터선택자
- parseInt()
- 재귀함수
- 자바 순열 코드
- inner class
- 순열 재귀
- Interface
- 순열코드
- java Collections.sort()
Archives
- Today
- Total
유블로그
[Java] Inner class 본문
- Class 안에서 다시 정의되는 Class
- 바깥 Class의 일부처럼 사용
- 다른 Class에서 사용하지 않고 바깥 Class에서만 많이 사용
- 별도의 객체가 만들어진다.
< inner class - anonymous >★★★
- class 안에서 이름 없이 만들어지는 inner class
- 재사용되지 않고 한 번만 사용된다. 즉 객체 생성 코드에 바로 class 내용 전달됨
- event handling 처럼 interface에 정의된 method의 구현부를 객체 생성 시점에 전달한다.
class AAA {
void a() {
System.out.println("AAA-a");
}
void b() {
System.out.println("AAA-b");
}
}
class BBB {
AAA a;
void setAAA(AAA newa) {
a = newa;
}
AAA getAAA() {
return a;
}
}
public class anonymous {
public static void main(String[] args) {
BBB a = new BBB();
a.setAAA(new AAA() {
void a() {
System.out.println("바꾼 AAA-a");
}
});
a.getAAA().a(); // 출력결과 : 바꾼 AAA-a
}
}
<inner class - static >
- class 안에서 다시 정의되는 class
- 다른 class 에서 사용하지 않고 바깥 class에서만 의미가 있을 경우 많이 사용
- 별도의 객체를 만들지 않고 사용할 수 있다.
class AAA {
static class BBB{
public static String str = "BBB";
}
}
public class innerclassStatic {
public static void main(String[] args) {
System.out.println(AAA.BBB.str);
}
}
'Java' 카테고리의 다른 글
[Java] Iterator (0) | 2020.08.11 |
---|---|
[Java] Collections (+Generic) (0) | 2020.08.11 |
[Java] Interface - 추상화 (0) | 2020.08.10 |
[Java] 다형성, 상속 (0) | 2020.08.10 |
[Java] 상속과 접근제한자 (0) | 2020.08.10 |