□ 객체 지향 프로그래밍(OOP : Object-Oriented Programming)의 특징
1. 캡슐화(Encapsulation) : 객체의 필드(=멤버변수), 메소드를 하나로 묶고
실제 구현하는 내용을 감추는 것
접근제한자를 사용해서 접근을 처리
□ 접근제한자 - 객체의 필드와 메소드의 사용 범위를 제한함으로써
외부로부터 보호하는 역할(public, protected, default, private)
상속(Inheritance) : 재사용성
상위 객체를 재사용해서 하위 객체를 쉽고 빠르게 설계할 수 있도록 도와줌
이미 잘 개발된 객체를 재사용해서 새로운 객체를 만들기 때문에 반복된
코드의 중복을 줄여줌.
다형성(Polymorphism) : 같은 타입이지만 실행 결과가 다양한 객체를 이용할 수 있는 성질
자바 다형성을 위해 부모 클래스 또는 인터페이스 타입 변환을 허용
다형성의 효과는 객체의 부품화가 가능
========================================================================================
□ 클래스(Class)
- 설계도, 틀(붕어빵 틀)
- 클래스의 용도 : 라이브러리(API : Application Program Interface)
다른 클래스에서 이용할 목적
□ 객체
- class의 인스턴스
□ class의 구성요소 및 멤버 : 필드(=멤버변수), 메소드, 생성자
□ 클래스의 구조
접근제한자 class 클래스명{
필드(=field, 멤버변수) : 클래스의 특징(=속성)을 나타내는 변수
메소드(=method) : 클래스의 기능
접근제한자 리턴타입 메소드명(매개변수, ...){ 실행문 }
생성자 : 객체 생성 가능
생성자의 이름은 클래스의 이름과 동일해야 함
반환타입이 없음
}//end of class
=>클래스 안에 메소드 만들수있음, 메소드안에 메소드 못 만듬
□ 객체 만들기
클래스 만들기(설계도, 틀) -> 객체 만들기(아파트, 붕어빵, 자동차,...) -> 객체 사용
클래스명 참조변수 = new 생성자();
*/