OOP (객체 지향 프로그래밍 언어)1. 정의객체(Object)를 중심으로 코드를 설계하고 구성하는 프로그래밍 패러다임데이터(속성)와 동작(메서드)을 가진 객체들로 나누고, 이 객체들이 서로 상호작용하도록 설계하는 방식 2. 특징캡슐화 : 데이터(속성)와 이를 조작하는 함수(메서드)를 하나의 객체로 묶어 보호하는 개념추상화 : 중요한 정보만 보여주고, 불필요한 세부 정보는 숨기는 개념다형성 : 같은 메서드가 여러 객체에서 다르게 동작할 수 있도록 하는 개념상속 : 기존 클래스를 재사용하여 새로운 클래스를 생성하는 개념 Value Type vs Reference Type 값 타입 (Value Type) 참조 타입 (Reference Type)할당 및 전달값이 복사되어 전달참조(메모리 위치)가 전달메모리 위..