티스토리 뷰

#객체란? 

말 그대로 대상을 나타내는 단어입니다.

 

사람 한명 한명이 객체라 할 수 있고, 책 한권을 객체라 할 수 있습니다.

 

사람은 생김새와 성격이 똑같을 수는 없기 때문에 개개인을 객체라 할 수 있으며,

 

책도 내용과 흔적이 모두 다르기 때문에 서로 다른 객체라 할 수 있습니다.


#클래스

 

사람들은 일반적으로 같은 속성들을 갖고 있습니다.

 

여기서 속성이란 눈,코,입,손,발 등의 신체들을 의미합니다.

 

책도 책 이름, 작가, 출판사, 출판일 등 같은 속성을 갖고 있다고 할 수 있습니다.

 

(ex)

클레스 - 붕어빵 기계


객체 - 붕어빵


#메서드란?

특정 작업을 수행하는 일련의 문장들을 하나로 묶은 것 -함수와 유사

 

내부적인 내용을 몰라도 입력값과 출력값만 이해해도 된다.

 

 ex) println(), random(), sqrt()

 

#객체 지향 프로그래밍 (Object Oriented Programing / OOP)

 

OOP는 객체의 관점에서 프로그래밍 하는 것을 의미합니다.

 

즉, 애플리케이션을 구성하는 요소들을 객체로 바라보고, 객체들을 유기적으로 연결하여 프로그래밍 하는 것을 말합니다.


#OOP 의 4가지 특징 

1. 추상화 

👉인터페이스로 클래스들의 공톡적인 특성(변수,메소드)들을 묶어 표현하는 것

 

장점

  • 작업을 효율적으로 수행가능

 

2.상속

👉자식 클래스가 부모 클래스의 특성과 기능을 물려받는 것

 

장점

  • 철저한 데이터 분석을 수행
  • 개발 시간을 단축
  • 높은 수준의 정확도

 

3.다형성

👉하나의 객체에 여러 가지 타입을 대입할 수 있다는 것을 의미

 

 

ex)

* 오버로딩(Overloading) : 하나의 클래스에서 메소드의 이름이 같지만, 파라메터가 다른 것* 오버라이딩(Overriding) : 부모 클래스의 메소드를 자식 클래스의 용도에 맞게 재정의하여 코드의 재사용성을 높임

 

4.캡슐화

👉정보를 객체 내부에 포함하고 선택된 정보만 노출

 

장점

  • 다른 개체에서 변경할 수 없다
  • 보안을 강화하고 데이터 손상을 방지한다.
  • 데이터를 함수를 통해서만 접근할 수 있다

 

 

 

 

 

 

※참고자료※

 

https://www.techtarget.com/searchapparchitecture/definition/object-oriented-programming-OO

 

https://velog.io/@ygh7687/OOP%EC%9D%98-5%EC%9B%90%EC%B9%99%EA%B3%BC-4%EA%B0%80%EC%A7%80-%ED%8A%B9%EC%84%B1

 

 

 

 

 

 

 

 

 

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2026/03   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함