
익명 클래스(이름이 없는 클래스)


현재 new Animal()은 생성자이고 void move()는 메소드이다.
이 void move()를 덮고 있는 {}는 클래스인데 앞에 클래스명이 없고 생성자가 있다.
이렇게 이름이 없는 것을 익명 클래스라고 하며 이름이 없기 때문에 또 객체를 생성할 수 없기 때문에
하나의 객체만을 위한 클래스이다. 메모리낭비를 줄일 수 있다.

이러한 익명클래스는 일반적인 클래스에서 사용하기 보다는 인터페이스나 추상클래스를 객체화할 때 보통 사용한다.
이렇게 Animal클래스가 추상일경우 재정의를 해주어야 하기 때문에 위의 Animal dog=new Animal()를 자동완성시켜주면 Anonmyous inner Type이 뜨면서 무조건 재정의를 해주어야 한다.

만약 implements하지 않고 추상클래스인 Animal 객체를 매개변수로 넘겨준다면 그 객체는 구현되서 넘어올 것이라
기대한다 따라서 추상클래스의 메소드를 사용할 수 있다.!
728x90
'[Java]' 카테고리의 다른 글
자바로 리듬게임 따라만들기 [시작,종료버튼] (0) | 2021.09.11 |
---|---|
자바 익명클래스 실습 (0) | 2021.09.10 |
자바로 리듬게임 따라 만들기 3 (JButton)이용하기 (0) | 2021.09.09 |
자바로 리듬게임 만들기 2 (Thread를 통해 음악 재생) (0) | 2021.09.07 |
자바로 리듬게임 따라만들기 1 클래스 만들기 (0) | 2021.09.06 |
댓글