1.Encapsulation
2.Abstraction
public, protected, private 이 3가지로 접근제한자가 있는데 (C++)
이 점근 제한자로 정보은닉의 수준을 나누는 것이다.
상속시에 도 이 제한자를 사용하는데...
우리는 public만을 사용한다.
그 이유는 우리가 차후에 유지보수하기 좋기 때문이다.
protected와 private으로 상속시 부모 클래스의 접근제한자를 바꿔서 상속 받기때문에 코드를 쉽게 읽지 못한다.
이 점근 제한자로 정보은닉의 수준을 나누는 것이다.
상속시에 도 이 제한자를 사용하는데...
우리는 public만을 사용한다.
그 이유는 우리가 차후에 유지보수하기 좋기 때문이다.
protected와 private으로 상속시 부모 클래스의 접근제한자를 바꿔서 상속 받기때문에 코드를 쉽게 읽지 못한다.
2.Abstraction
Virtual Function를 만들게 되면
Virtual Function Table 이 생기고
Virtual Funcrion Table Pointer 는 그 함수의 스택 맨 첫번째에 생김.
Virtual Function Table 이 생기고
Virtual Funcrion Table Pointer 는 그 함수의 스택 맨 첫번째에 생김.
ㄱ.ABC(Abstract Based Class)
virtual함수가 하나라도 들어가면 ABC
멤버 변수가 들어갈 수 있다.
ㄴ.Interface
모든 맴버 함수가 순수 가상함수이어야함.
멤버변수는 들어갈수 없다.
3.Polymorphism
ㄱ.Function Overloading
함수의 내게변수, 리턴값이 다르게 구현되면 같은 이름의 함수를 만들 수 있다.
ㄴ.Operator Overloading
연산자를 오버로딩 할 수 있다.
(그런데 연산자로 2개이상의 파라미터가 들어가게 될때 전역 함수를 사용.)
(그런데 연산자로 2개이상의 파라미터가 들어가게 될때 전역 함수를 사용.)
ㄷ.Overriding
virtual 을 사용해서 만든 부모의 함수를 자식이 오버라이딩 하면
부모의 일을 자식이 처리하는거~^^
부모의 일을 자식이 처리하는거~^^
'Window Course > ETC' 카테고리의 다른 글
Error]Cannot access the Classview information file.... (0) | 2010.12.27 |
---|---|
Boilerplate Code?? (0) | 2010.11.06 |
UTC Time??? (0) | 2010.11.06 |