<객체지향 프로그램>

 

 

- 객체지향 프로그램은 재사용성이 높고 유지보수가 용이하다.

 

- 일종의 틀을 만드는 작업이다.

 


 

<객체 - Object>

 

 

- 단어 : 추상적인것 / 구체적인 것 

 

1. 추상적인 것 : 가구, 동물 등등

 

2. 구체적인 것 : 의자, 사자, 호랑이 등등 

 

- Object 는 구체화 될 수 있는 것을 말한다.

 

* 다형성 : 다양한 이름으로 부를 수 있는 것 (내가 불릴 수 있는 이름이 많은 것)

 

- 변수는 행동에 의해서 바뀐다. 

 

- 객체들과 상호작용 가능하다. 

 

- object 는 각 객체마다 고유한 특성(state)와 행동(behavior)를 가진다. 

 

* 특성 : 변수 / 행동 : 메서드 

변수는 행동에 의해서 바뀐다.

 

 


 

<클래스>

 

 

- 함수와 변수로 이루어져 있다.

 

- 구체화 될 수 있고 되지 않을 수도 있다. -> 일종의 설계도 역활

 

- new 에서 뜨는 것들은 object (구체적인 것)이다.

 

 


 

<인스턴스>

 

 

- 모든 클래스는 구체적이지 않기 때문에 인스턴스가 될 수도 안될수도 있다.

 

- 인스턴스 되었다는 것은 구체화 된 것 

 

- 인스턴스화 시키면 메모리에 뜨게 된다.

 

 

 

 


 

 

 

<생성자>

 

 

- 디폴트 값은 컴파일러가 만든다.

 

- 생성자가 있으면 컴파일러가 자동으로 만들어 주지 않기 때문에 수동으로 만들어 줘야 한다.

 

- 생성자는 여러개 있어도 된다.

 

 

 

 


 

 

<오버로딩>

 

 

- 생성자는 여러개 만들 수 있기 때문에 필요할 때 호출이 가능하다. 

동일한 이름으로 오버해서 적재시킬 수 있다.

 

- 함수명이 같아도 매개변수의 갯수 타입이 다르면 다른 함수로 인식한다.

 

 

openclose