반응형 abstract 프로그래밍/기본기ㆍ자료구조 2020. 4. 11. Interface와 abstract의 차이 개념 abstract와 Interface는 둘 다 정의된 내용의 구현을 강제하기 위해서 사용된다는 개념적인 공통점이 있다. 그러나, 사용 방법에 대한 차이점들이 있고 이는 상황에 따라 Interface로 구현하느냐, abstract로 구현하느냐로 달라질 수 있다. Interface와 abstract의 차이 abstract는 메서드나 변수 등을 가질 수 있다. Interface는 순수 가상 함수 및 프로퍼티만 가질 수 있다. (프로퍼티 안의 정의는 불가능하다) abstract는 다중 상속이 불가능하다. Interface는 다중 상속이 가능하다. abstract는 생성자를 가질 수 있다. Interface는 생성자를 가질 수 없다. abstract는 변수를 가질 수 있다. Interface는 .. 프로그래밍/기본기ㆍ자료구조 2020. 4. 10. Abstract (추상) 개념 - 상황에 맞게 내용을 재정의해서 사용할 수 있는 개념이다. - 상속하는 클래스 내에서 같은 시그니처의 메소드로 오버라이딩 될 수 있다. - Virtual(가상)과는 달리 선언한 추상 함수는 상속받은 하위 클래스에서 반드시 구현부를 구현해야한다. (하위 클래스에 반드시 재정의하여 사용해야한다. 자기 자신은 선언만 가능하다. 또한 추상화는 Interface와 비슷하다) - 스스로 인스턴스를 가질 수 없다. - 멤버변수, 멤버함수 등이 구현 가능하다. - 단 1개만 상속 받을 수 있다. - 내용은 Interface와 비슷하나, 사용 방법은 Virtual과 비슷하기 때문에 Virtual과 Abstract를 헷깔리지 않도록 해야한다. (사용 목적에 따라 명확하게 구분하여야한다.) 사용 목적 - 상속관계.. 이전 1 다음 반응형