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 : 같은 클래스