| 인터페이스 | 추상 클래스 | |
|---|---|---|
| 가질 수 있는 변수와 메서드 | 상수(public static final)과 추상 메서드(바디가 없는)만 가질 수 있다 | 일반 변수, 일반 메서드, 추상 메서드 모두 가질 수 있다. |
| 다중 상속 | 가능하다 | 불가능하다 |
| 다중 상속이 가능한 이유 | ||
| HAS-A : -을 할 수 있는 | IS-A : -이다 | |
| abstract 키워드 사용 여부 | 선택 사항 | 필수 |
.........
모델링은 개발하고자 하는 프로그램을 시각적으로 표현하는 것
의뢰자의 요구에 맞도록 쉽게 수정해서 결과적으로 유지보수 기간을 줄여
생산성을 높이는데 목적이 있다.
모델링은 언제 해야 할까?
개인이 제어 할 수 없는 작업을 할때
협업이 필요한 프로젝트를 할때
다양한 관점의 설계도가 있어야 할때
결론: UML 이용하여 설계도를 만들 수 있다.
Object- Oriented (객체 지향 모델링)
객체지향에서
객체와 클래스란?
Object-Oriented Programming (OOP)
객체지향 프로그래밍 특징
1. 캡슐화
객체의 데이터(필드),동작(메소드)를 하나로 묶고 실제 구현 내용을
외부에 감추는 것
상속
코드의 재사용 ( 중복 코딩 최소화)
유지보수 시간 최소화
부모 객체가 자기가 가지고 있는 필드, 메소드를 자식객체가 사용할 수 있도록
클래스 설계한 것.
다형성
사용방법은 동일하지만, 실행 결과가 다양하게 나오는 성질
다형성을 구현 하기 위해서는 자동타입변환(프로모션) , 재정의(오버라이딩)