interface 2

[JAVA] 인터페이스와 추상 클래스 (Interface, Abstract Class)

인터페이스 (Interface) 인터페이스(Interface)란, 추상 메소드(Abstract Method)만으로 이루어진 클래스이다. 추상 메소드는 구현 내용 없이 선언만 해 놓는 형태로 정의된다. 즉, 인터페이스 내의 모든 메소드는 선언만 되어 있을 뿐, 그 내용은 없다. public interface Car{ //인터페이스 내의 변수는 반드시 static final로 지정한다. public static final int variable = 10; //인터페이스 내에서 지정한 메소드는 //반드시 이 인터페이스를 구현하는 클래스가 구현해야 한다. //즉, 클래스에게 특정 메소드들을 구현하도록 강제할 수 있다. public void Ride(); public void RideReverse(); publi..

JAVA 2021.03.20

다형성 (Polymorphism)

스피커를 하나 구매하려는 상황을 가정해 보자. 우리가 고를 수 있는 제품은 A, B, C사에서 제조된 제품들이다. 우리는 어떤 제품을 사더라도, 음악을 재생할 수 있는 기능만 있다면 목표는 달성할 수 있다. 더 좋은 음질, 더 다양한 기능을 가진 제품을 구매할 수도 있지만, 아무튼 어떤 스피커를 사더라도 "음악을 듣는다" 라는 목표는 달성할 수 있을 것이다. 그런데, 우리가 스피커로 음악을 듣기 위해 스피커가 어떤 원리로 음악을 재생하는지 알 필요가 있을까? 물론 없다. 우리는 그저 스피커에서 나오는 음악을 듣기만 하면 된다. 우리가 구매했던 스피커에 음성 인식 기술이 새로 업데이트되었다! 만약 스피커에 어떤 부가적인 기능이 추가되거나 삭제되어도, "스피커로 음악을 듣는다" 라는 우리의 원래 목표는 변함..

JAVA 2021.03.09