6. class
객체 지향 프로그래밍
개념
부품에 해당하는 객체들을 먼저 만들고, 이것들을 하나씩 조립해서 완성된 프로그램을 만드는 기법
객체(Object)란?
물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것
특징
캡슐화
객체의 필드, 메서드를 하나로 묶고 구현 내용을 감추는 것
외부 객체는 내부 구조를 알지 못하며 객체가 노출해서 제공하는 필드와 메서드만 이용할 수 있음
외부의 잘못된 사용으로 인해 객체가 손상되지 않도록 함이 목적
→ 접근 제한자로 객체의 필드와 메서드의 사용 범위를 제한함으로써 외부로부터 보호.
상속
상위 객체가 가지고 있는 필드와 메서드를 하위 객체에게 물려주어 하위 객체가 사용할 수 있도록 해줌
다형성
같은 타입이지만 실행 결과가 다양한 객체를 이용할 수 있는 성질을 말함
부모 클래스 or 인터페이스의 타입 변환을 허용함
메서드 오버로딩(overloading)
클래스 내에 같은 이름의 메서드를 여러개 선언하는 것
정적 멤버와 static(고정된)
정적 멤버는 클래스에 고정된 멤버로 객체를 생성하지 않고 사용할 수 있는 필드와 메서드
객체(인스턴스)가 아닌 클래스에 소속된 멤버로 클래스 멤버라고도 불림
클래스 로더가 클래스(바이트 코드)를 로딩해서 메서드 메모리 영역에 적재할 때 클래스별로 관리됨.
Last updated