[WIL] 상속과 인터페이스

김대욱·2023년 2월 5일
0

상속

상속을 사용하는 이유는 중복 코드를 줄일 수 있고, 유지보수가 쉽고, 확장이 편리하기 때문이다.

클래스가 상속받고 싶은 클래스를 선택해서 상속 받게 되는데, 상속을 받는 클래스를 하위클래스, 자식클래스 라고 하고 상속을 해주는 클래스를 상위클래스, 부모클래스 라고 부른다.

자바 상속 선언

public class Apple extends Fruit {

}

클래스 명 뒤에 extends와 상위 클래스의 이름을 작성하면 상속을 받을 수 있다.
부모클래스의 필드와 메서드를 물려받게 된다.(접근제어자에 따라 상속을 받지 못할 수도 있다)

자바에서 다중 상속은 불가하다.

인터페이스

인터페이스는 추상 메서드만 가질 수 있다.

하위 클래스에서 여러개의 인터페이스를 상속받을 수 있고, 인터페이스에 선언되어 있는 모든 메서드를 오버라이딩 해야한다.

인터페이스의 사용

public interface Animal {
	public void eat();
}

public class Dog implements Animal {
	@Override
    public void eat() { // eat() 메소드를 구현하지 않으면 컴파일 에러 발생
    	System.out.println("개가 먹는다");
    }
}

인터페이스를 사용하는 이유

인터페이스는 메서드의 틀을 미리 만들어 협업 시 개발자 간의 의사소통 혼선을 줄여주고 다형성 개발에 유리함을 가져다 주기 때문이다.

기능의 구현을 강제하기 때문에 다형성을 보장할 수 있다.

0개의 댓글