● Annonymous 클래스(익명의 클래스 = 무명클래스)
AWT SWING 윈도우제공리소스들=윈폼 메모장같은것들 설치마법사
비디오대여 연체료 그때사용한게 AWT SWING
이벤트 (클릭. 드래그 확대 축소 등) 객체지향관점에서는
- AWT 나 안드로이드 이벤트 처리에서 일반적으로 사용
- 상위 클래스 메소드를 하나 정도 재정의할 필요성이 있을 때 사용
- 클래스의 객체가 필요하면 또 다시 클래스를 생성해야 하는 번거로움 때무에
익명의 클래스를 생성하여 처리한다.
● 형식 및 구조
new 상위클래스의생성자()
{
접근제어지시자 자료형 메소드()
{
// ...;
}
}; ← 반드시 세미콜론 필요함
// import java.lang.*;
class Test //상속된게 없다? 아니다. 안보이더라도 extends Object 가 있는 것이다. Object클래스를 상속받는 중
{ //그러면 extends SuperTest 등 단일상속이 아니라면? extends라는 키워드가 쓰이지 않은 아이들만 Object상속
// 모든 클래스는 object를 상속받는다고 했다. SuperTest도 올라가보면 extends Object
// 그렇기때문에 object를 상속받지 않는 클래스가 없으며 단일상속이라는 문법이 깨진것도아니다
// 보이는 상속관계가 없다면 부모클래스는 Object 이다.
// 위치는 자바닷랭 패키지 안에. 따라서 모든 클래스는 예외없이 보이지는않지만
// import java.lang.*; (String도 System도 _빨간색처리_이 패키지 안에 들어있다. )
// 배열.clone();
//super...;
public Object getString()
{
return new Object()
{
@Override
public String toString()
{
return "익명의 클래스...";
}
}; //← 세미콜론(미 작성 시 에러 발생)
}
}
public class Test120
{
public static void main(String[] args)
{
Test ob1 = new Test();
Test ob2 = new Test();
System.out.println(ob1.toString());
//-==>>Test@15db9742
System.out.println(ob1.getString());
//-==>>익명의 클래스...
}
}
'📚Study Note > JAVA' 카테고리의 다른 글
[ JAVA ] System.out.printf("%1$d + %1$d, 55); %d 앞에 $1을 붙이게 되면? (0) | 2021.05.13 |
---|---|
[ JAVA ] 클래스 고급 - 중첩 클래스 ③ (0) | 2021.03.29 |
[ JAVA ] 클래스 고급 - 중첩 클래스 ② (0) | 2021.03.29 |
[ JAVA ] 클래스 고급 - 중첩 클래스 (0) | 2021.03.29 |
[ JAVA ] 클래스 고급 - 인터페이스(Interface) ⑤ (0) | 2021.03.29 |