* 다형성 객체들의 타입이 다르면 똑같은 메시지가 전달되더라도 서로 다른 동작을 하는 것을 말한다. 즉, 똑같은 명령을 내리지만 객체의 타입이 다르면 서로 다른 결과를 얻는 것이다. 중요한 것은 메시지를 보내는 측에서는 객체가 어떤 타입인지 알 필요가 없다는 점이다. 실행시간에 객체의 타입에 따라서 자동적으로 적합한 동작이 결정된다. 다형성은 객체 지향 기법에서 하나의 코드로 다양한 타입의 객체를 처리하는 중요한 기술이다. * 가상상속(virtual) java에선 단일상속이 되지만, c++에선 다중상속이 가능하다. 다중상속을 하면 여러군데로 상속을 하러 가기 때문에 모호성이 발생할 수 있는데, 명확성을 중요시하는 c++에서 모호성이 발생하면 에러가 뜨게 된다. 다중상속으로 모호성이 발생했을때 가상상속으로..
c++ 을 이용해서 급여관리프로그램을 짜봤다. 급여관리프로그램 설계도는 이러하다. 입력 받은 Data 값을 넣는 돈, 정보, 시간 class들을 만들고 그 Data를 has~a 관계로 연결하여 Data를 받는 Data 보관 class를 만든다. 정규직class와 비정규직class를 구분하여 Data 보관 class를 상속 받는 class들을 만든다. 정규직과 비정규직 기능을 나누고 정규직과 비정규직 class의 데이터를 받는 데이터 관리(Data Managerment) class를 만들어 has~a 관계로 이어줬다. Data Managerment class는 모든 입력, 출력, 조회, 삭제 및 값 연산을 수행하는 class로 main에서 주는 메모리 갯수 인자를 받아 정규직 class의 객체, 비정규직 ..
* c++ 상속에는 3가지 상속이 있다. 1. private 상속 private란 자기 자신의 내부에서만 접근 할 수 접근지정자로 외부에서 접근 할 수가 없다. private로 자식에게 상속하면 어떤 접근지정자의 필드라도 자식에게 상속되는 순간 private로 넘어가게 된다. 거의 쓰지 않는 상속 방법이다. 2. protected 상속 protected란 자기 자신의 내부와 상속한 자식에게서만 접근 할 수 있다. protected 상속을 했을때, private로 상속을 넘기면 private로 상속 받고 protected와 public으로 상속을 넘기면 protected로 상속 받는다. has ~ a 관계로 상속된다. 3. public 상송 public이란 내부던 외부던 모두 접근이 가능한 공공 접근자다...