[Java 기초] 부모 클래스, 자식클래스 이해하기

chael_lo·2021년 6월 1일
0

Java 기초

목록 보기
2/2

1. 출력 되는 값의 결과는?

public class A {
    public A() {
        System.out.println("1");
    }

    public void a() {
        System.out.println("2");
    }
}

public class I extends A {
    public I() {
        System.out.println("11");
        super();
    }
}

I i = new I();
i.a();

부모 클래스의 생성자 호출은 자식 클래스 생성자의 맨 첫 줄에서 불려야 한다.
따라서 에러가 발생한다.

2. 출력되는 값의 결과는?

public class A {
    public A() {
        System.out.println("1");
    }

    public void a() {
        System.out.println("2");
    }
}

public class C extends A {
    public void a() {
        System.out.println("3");
    }
}

C c = new C();
c.a();

답 : 1,3
c에서 a와 같은 메서드인 a를 가지고 있다.
override 어노테이션은 필수가 아니라서 오류가 나지 않는다.
그럼에도 override 어노테이션을 사용하는 이유는
메소드 이름의 철자 실수나 파라미터 매칭의 어긋남 등을 확인할 수 있고,
override되었다는 것을 명확히 보여줌으로써 코드 가독성을 높인다.

출처: 코드잇

profile
천천히 꾸준히

0개의 댓글