CS
객체지향
yougeun
2022. 10. 25. 18:17
728x90
객체지향 프로그래밍
프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들간의 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다.
장점
코드 재사용이 용이하다
유지보수가 쉽다
대형프로젝트에 적합하다
단점
처리속도가 상대적으로 느림
객체가 많으면 용량이 커질 수 있음
설계시 많은 시간과 노력이 필요
클래스:집단에 속하는 속성과 행위를 변수와 메서드로 정의한 것
인스턴스(객체):클래스에서 정의한 것을 토대로 실제 메모리에 할당된 것으로 실제 프로그램에서 사용되는 데이터
추상화:공통의 속성이나 기능을 묶어 이름을 붙이는 것
캡슐화:기능과 특성의 모음을 클래스라는 캡슐에 분류해서 넣는 것
객체가 외부에 노출하지 않아야할 정보 또는 기능을 접근제어자를 통해 적절히 제어권한이 있는 객체에서만 접근하도록 할 수 있도록함
상속:부모클래스의 속성과 기능을 그대로 이어받아 사용할 수 있게하고 기능의 일부분을 변경해야 할 경우 상속받은 자식클래스에서 해당기능만 다시 수정하여 사용할 수 있게 하는 것
다형성:하나의 변수명,함수명 등이 상황에 따라 다른 의미로 해석될 수 있는것이다.
오버라이딩:부모클래스의 메서드와 같은 이름,매개변수를 재정의하는 것
오버로딩:같은 이름의 함수를 여러개 정의하고 , 매개변수의 타입과 개수를 다르게 하여 매개변수에 따라 다르게 호출할 수 있게 하는 것
728x90