-
추상클래스와 인터페이스 이 두가지는 공통점이 있는데 스스로 객체를 생성하지 못한다는 것이다.
그래서 객체를 생성해주는 방법들을 정리해야한다.
첫 번째로는 부모클래스에서 자식클래스로 상속처리를 하여 객체를 생성해주는 것이다.
두 번째로는 익명 내부 클래스를 사용하여 내부적으로 클래스나 인터페이스를 상속하여 메서드 오버라이딩을 수행 후 클래스를 생성하여 객체를 생성하는 방법이다.
기본적으로 스스로 객체를 생성하지 못하기 때문에 일련의 과정과 비슷하게 자식클래스에서 객체를 생성하거나 , 익명 내부 클래스를 사용하여 내부에서 상속하도록 하여 수행할 수 있다.
추상클래스에서 예시문을 만들어보자 .
1. 자식클래스를 이용한 객체 생성방법이다 .
abstract class A {
abstract void abc()
}
class B extends A {
void abc(){
// ....
}
}
로 두면 추상 클래스에서 자식 클래스를 이용하여 객체를 생성할 수 있다 .
2. 익명 이너 클래스를 사용하여 객체를 만드는 방법이다.
익명 이너 클래스를 사용하여
클래스명 참조 변수명 = new 생성자 (){
// 추상 클래스에 포함된 추상메서드를 사용하여 갖고 올 수 있다. //
}
이번에는 인터페이스로 예시문을 만들어보자 .
1. 인터페이스를 일반 클래스로 상속해 객체를 생성할 수 있다.
interface A {
int a = 5;
void abc();
}
class B implements A {
public void abc() {
// .... //
}
}
로 인터페이스를 다른 클래스에 implements를 하여 사용할 수 있다.
2. 추상클래스와 마찬가지로 익명 이너 클래스를 사용할 수 있다 .
A a = new () {
public void abc() {
//. ...//
}
}
로 표현할 수 있다.
여기서 중요한 것은 익명 이너 클래스의 폼이다.
익명 이너 클래스라는 말이 익숙치 않은 단어라고 당황하지말고 그대로 사용하자
'자바 > 자바 키포인트' 카테고리의 다른 글
[자바] HashSet<E>에서 객체에 대한 중복 메커니즘을 hashCode()와 equals()를 통해서 알아보기 (0) 2023.02.16 [자바] 이너 인터페이스를 활용한 자바에서 이벤트 처리 기능 만드는 예시문 연습하기 (0) 2023.02.11 [자바] final 제어자의 의미와 final 상수 메모리의 정확한 정의 이해하기 (0) 2023.02.11 [자바] Treeset의 정의와 기준을 잡아주는 comparable 인터페이스와 comparator 인터페이스의 예시문 만들기 (0) 2023.01.05 [자바] 제네릭 클래스와 제네릭 메서드의 정의와 간단한 사용예시 만들기 (0) 2023.01.04 댓글