728x90
반응형

추상클래스 

클래스 구현부 내부에 추상 메서드가 하나 이상 포함되거나 abstract로 정의된 경우

 

추상클래스 구현

public class Animal extends AnimalValue {

    String sound;

    // 추상메서드 구현(재정의)
    @Override
    void sound(String sound) {
        this.sound = sound;
    }

    @Override
    void behavior() {
        System.out.println(sound);
    }

    public static void main(String[] args) {
        Animal tiger = new Animal();

        tiger.sound("어흥");
        tiger.behavior();
    }
}

// 추상클래스
abstract class AnimalValue {
    abstract void sound(String sound);
    abstract void behavior();
}

 

 

인터페이스

모든 메서드가 추상메서드인 경우 

 

인터페이스 구현

interface interfaceExample {
	int NUMBER = 1; // public static final int NUMBER = 1;

	void getNumber(); // public abstract void getNumber();
}

class useInterface implements interfaceExample {
  
	@Override
	public void getNumber() {
        // 재정의...
    }
}

 

 

추상클래스/인터페이스

📌 목적

추상클래스 : 상속받아서 기능을 이용하고 확장시키기 위함

인터페이스 : 함수의 구현을 강제화, 모든 메소드가 추상메소드임, 여러개를 상속받아 사용가능

 

반응형

'면접 준비 > 코딩테스트' 카테고리의 다른 글

제이쿼리 관련  (0) 2020.12.17
자바의 메모리 구조 영역  (0) 2020.12.16
GET과 POST의 비교 및 차이  (0) 2020.12.14
$(document).ready()와 $(window).load()  (0) 2020.12.11
http 에러 코드 정리  (0) 2020.12.10
복사했습니다!