|
|
|
|
[프로그래밍] 자바 추상클래스와 인터페이스 차이점
|
|
|
|
[프로그래밍] 자바 추상클래스와 인터페이스 차이점
추상클래스를 설명하자면 없거나 하나 이상의 추상메소드를 가지고 있는 것이 추상클래스다. 그렇다면 추상메소드는 무엇인가 추상메소드는 안이 아직 구현되어 있지 않은 abstract로 정의된 메소드를 말한다. 클래스안의 메소드가 단 하나라도 추상메소드가 있다면 그 클래스 앞에는 반드시 abstract 클래스명으로 표기되어야 하며 abstract와 final 키워드를 동시에 표기할수 없다. 추상클래스는 일반적인 메소드도 있을수 있고 추상메소드가 있을수도 있다. 추상클래스는 일반변수들을 가질수 있다. 추상클래스도 인터페이스처럼 추상클래스가 아닌 클래스에서 상속을 받는다면 추상메소드가 있을경우 모두 구현해주어야 한다. 물론 추상클래스에서 추상클래스를 상속받는다면 모두 구현하지 않아도 된다. 추상클래스에서도 인터페이스를 구현할수 있는데 이때는 구현하지 않고 그냥 놔둘수 있다. 추상클래스는 생성자를 가질수 있다. 추상클래스는 인스턴스를 만들수 없지만 추상클래스를 상속받은 클래스를 통하면 인스턴스화가 가능하다. 예를 들자면 추상클래스명 ab = new 클래스명( ) 이런 형태가 될것이다. 추상클래스의 접근지정자는 어떤 것이나 가능하다. 추상클래스의 궁극적인 목적은 상속하기 위함이다. 어떤 클래스가 추상클래스를 상속받을때는 extends를 쓴다.
즉 최소한 하나 이상의 추상 메소드를 가져야 하며, 추상 클래스로부터는 직접객체가 생성될수 없다.
.... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|