인터페이스(Interface) JAVA에서 인터페이스는 객체의 사용 방법을 정의한 타입이다.일상생활으로 치면 일종의 가이드라인이라고 볼 수 있다.일전에 추상클래스를 설계도라고 표현한 적이 있는데, 인터페이스도 동일한 역할을 한다.추상클래스는 추상클래스는 상속으로 추가할 수 있으며, 단일상속만 가능하다.하지만, 인터페이스는 다중상속이 가능하다는 것이 추상클래스와 인터페이스의 가장 큰 차이점이다. 인터페이스는 개발 코드와 객체가 서로 통신하는 접점 역할을 하고 있다.즉, 객체에서 메소드들의 이름과 매개변수들을 미리 저장해놓고 있다가 개발코드에게 어떤 메소드가 필요한지, 해당 기능을 하는 메소드의 이름은 무엇인지를 알려주는 역할을 한다. 그러므로, 인터페이스를 사용하게 되면, 코드의 표준화가 가능하다.즉, 같..
추상클래스(Abstract Class) 클래스는 객체를 직접 생성할 수 있는 실체 클래스와 추상 클래스가 존재한다.우리가 만들어왔던 클래스는 전부 실체 클래스이다.그럼 추상클래스는 무엇일까? 실체 클래스는 실체 클래스들의 공통 특성을 추출해서 선언한 클래스이다.추상클래스와 실체 클래스는 상속의 관계를 가지고 있으며( 추상클래스 - 부모 / 실체 클래스 - 자식 ), 실체 클래스는 추상 클래스의 모든 특성을 물려받고, 추가적인 필드와 메소드를 가질 수 있다. 추상 클래스는 실체클래스의 설계도와 같은 역할을 한다.그러므로 추상 클래스는 객체를 직접 생성하지는 못한다.즉, new 연산자를 사용하여 인스턴스를 생성시키지 못한다는 것이다. 추상 클래스는 다음과 같은 방법으로 선언한다. public abstract..