프로그래밍/Java 2

추상클래스 (Abstract)

추상클래스: - 인스턴스 생성이 불가능 (상속을 위해 만든 클래스). - 하나이상의 추상메서드를 가지고 있다. - 일반 구상메서드(구현부가 있는메서드)또한 가지고 있을 수 있다. - 추상클래스를 상속한 클래스를 서브클래스(Subclass)라고 한다. - 추상클래스에 추상메서드가 있을 경우 서브클래스는 반드시 그 추상메서드를 오버라이딩(Overriding)하여 구현해야 한다.

추상클래스(Abstract) vs 인터페이스(Interface)

다형성 "여러 형태를 갖는 것"으로 정의 한 변수의 타입과 그 변수가 참조하는 인스턴스의 타입이 정확하게 일치할 필요 없는 성질 다형성은 다형 참조가 가능한데 이는 때에 따라 다른 타입의 객체를 참조할 수 있다는 것 동적바인딩을 통해서 추상클래스: - 한개 이상의 추상 메소드를 가지고 있는 클래스 - 인스턴스의 생성이 불가능하며, 해당 클래스를 extends 하여 추상 메소드를 구현해야만 사용 가능 인터페이스: - 메소드에 대한 명세와 상수만 존재 - 상속받은 클래스는 인터페이스에 있는 모든 메소드를 구현해야 함 추상 클래스로 정의된 타입을 구현하는 클래스는 반드시 서브 클래스가 되어야 함 반면에 인터페이스는 인터페이스에 정의된 모든 메소드를 구현하고 인터페이스 구현 계약을 지키면 됩니다. 즉 클래스 상..