자바의정석(2)
-
자바[JAVA] : 추상클래스
● 추상 클래스 추상 클래스(abstract class) 란? 클래스를 설계도에 비유한다면, 추상클래스는 미완성 설계도라 할 수 있다. 클래스가 미완성이라는 것은 멤버의 개수에 관계된 것이 아니라, 단지 미완성 메서드(추상메서드)를 포함하고 있다는 의미이다. 미완성 설계도로 완성된 제품을 만들 수 없듯이 추상클래스로 인스턴스는 생성할 수 없다. 추상클래스는 상속을 통해서 자손 클래스에 의해서만 완성될 수 있다. 추상클래스 자체로는 클래스로서의 역할을 다 못하지만, 새로운 클래스를 작성하는데 있어서 바탕이 되는 조상 클래스로서 중요한 의미를 갖는다. 추상클래스는 키워드 'abstract'를 붙이기만 하면 된다. 클래스 선언부의 abstract를 보고 이 클래스에는 추상메서드가 있으니 상속을 통해서 구현해주..
2021.01.28 -
자바[JAVA] : 오버라이딩(Overriding) 이란?
● 메소드 오버라이딩 오버라이딩(overriding)이란? 조상클래스로부터 상속받은 메서드의 내용을 변경하는 것을 오버라이딩이라고 한다. 상속받은 메서드를 그대로 사용하기도 하지만, 자손 클래스 자신에 맞게 변경해야 하는 경우가 많다. 이럴 때 조상의 메서드를 오버라이딩이라 한다. (override의 사전적 의미는 '~위에 덮어쓰다(overwrite)' 이다. 오버라이딩의 조건? 오버라이딩은 메서드의 내용만을 새로 작성하는 것이므로 메서드의 선언부는 조상의 것과 완전히 일치해야 한다. 그래서 오버라이딩이 성립하기 위해서는 다음과 같은 조건을 만족해야 한다. (중요) 자손 클래스에서 오버라이딩 하는 메서드는 조상클래스의 메서드와 - 이름이 같아야 한다. - 매개변수가 같아야 한다. - 반환타입이 같아야 한..
2021.01.28