til/Java
객체 지향과 클래스 (Class)
값진
2022. 3. 20. 18:23
객체 지향 프로그래밍(OOP, Object-Oriented Programming)
- 객체 지향 프로그래밍에서는 모든 데이터를 객체(object)로 취급하며, 이러한 객체가 바로 프로그래밍의 중심이 된다.
- 객체의 상태(state)와 행동(behavior)을 구체화하는 형태의 프로그래밍을 뜻한다.
- 이때 객체를 만들어 내기 위한 설계도와 같은 개념을 클래스(class)라고 한다.
클래스(class)
- 소스코드를 작성하는 것은 어떤 프로그램을 구현하기 위한 과정을 기술하는 것. 프로그램은 작성한 내용대로 동작하게 되고, 이것은 객체를 정의하는 틀 또는 설계도와 같다고 볼 수 있다.
- 클래스는 필드와 메소드로 구성된다. 필드는 객체의 상태를 나타내고 메소드는 객체의 행동을 나타낸다.
- 필드는 클래스에 포함된 변수를 의미하고, 메소드는 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라고 할 수 있다.
클래스의 정의
public class Car {
private String carName; //클래스의 필드
private int carYear;
public void brake() {} //클래스의 메소드
..
}
- 접근제어자 + 키워드 + 클래스 이름 으로 생성한다.
- 접근제어자란 외부 클래스가 해당클래스의 접근을 허용하는 범위이다.
- public > protected > default > private
- public : 같은 클래스 / 같은 패키지 / 자식 클래스 허용 / 그 외 허용
- protected : 같은 클래스 / 같은 패키지 / 자식 클래스 허용
- default : 같은 클래스 / 같은 패키지
- private : 같은 클래스