클래스(Class)

고대열·2023년 1월 27일
0

JAVA 프로그래밍

목록 보기
2/13

🌳 클래스(Class)

👀 객체지향 프로그래밍(OOP, Object-Oriented Programming)

1. 클래스(Class) 개념

  • 멤버(member)로 속성을 표현하는 필드(field)와 기능을 표현하는 메소드(method)를 가진다.
  • 또한, 클래스는 생성된 객체의 필드를 초기화해주는 특별한 메소드인 생성자(constructor)를 가진다.
  • 객체의 설계도 역할을 하는 프로그램 소스이다.
  • 공장에서 하나의 설계도를 가지고 여러 개의 제품을 생산할 수 있는 것처럼 하나의 클래스를 통해 동일한 구조를 갖는 객체를 여러개 생성할 수 있다.
    👍 설계도는 Class 를 의미하고, 제품A, 제품B, 제품C 는 설계도에 의해 생성된 Object 를 의미한다.

    👍 Car 라는 Class 에서 door 라는 멤버변수를 선언했고, Object를 생성하면서 각 특징에 맞게 변수값을 셋팅했다.

2. 클래스의 기본 작성 방법

class 클래스이름 {
	멤버변수;    
    void 메서드이름() {
    	...
    }
}
  • class라는 예약어와 클래스의 이름을 명시하고 {...} 블록을 구성한다.
  • 멤버변수는 여러개 존재할 수 있다. 이 때, 값을 선언과 동시에 할당할 수도 있고, 객체를 통해 간접적으로 할당할 수도 있다.
  • 메서드는 여러개 존재할 수 있다.
  • 클래스 안에 포함된 멤버변수와 메서드를 특성에 따라 그룹화하기 위한 기법이 클래스를 작성하는 것이라고 이해할 수 있다.

3. 클래스의 멤버변수

  • 클래스(Class)란 객체를 위한 틀을 제공하는 것이기 때문에 클래스 작성과정에서 멤버변수에 할당된 값은 객체를 통하여 멤버변수의 값을 할당하기 전까지 사용될 "기본값(default)"으로서의 의미이다.
  • 객체를 통하여 새로운 값이 할당되면 클래스 작성 시에 멤버변수에 대입한 값은 의미를 잃어버리게 된다.
  • 때문에 일반적으로 클래스 작성시에는 멤버변수에 값을 지정하지 않는다.

4. 클래스의 메서드

  • 메서드란 프로그램에서 하나의 동작(기능) 단위를 의미한다.
  • 두 개 이상의 메서드가 서로 동일한 대상을 위해서 존재할 경우, 이 메서드들을 클래스에 포함시켜 그룹화 할 수 있다.
  • 클래스에 멤버변수와 메서드가 공존할 경우, 멤버변수는 모든 메서드가 공유하는 전역 변수로 존재하게 된다.
  • 클래스 안의 변수 종류
    멤버변수(=전역변수)
    : 클래스 안에서 선언된 변수로써, 클래스 블록 범위 안에서 유효하다. (모든 메서드가 공유 가능)
    지역변수
    : 메서드 안에서 선언된 변수로써, 메서드의 블록을 빠져나가지 못한다. 그러므로 다른 메서드는 해당 변수를 인식하지 못한다.
  • 메서드만 포함한 클래스의 특징
    상태(멤버변수) 용도가 아닌 기능(메서드)을 활용하기 위한 것이다.
    ➡ 객체 안에 멤버변수(=데이터)가 포함되지 않는다.
    객체 안에 포함된 메서드를 호출하여 결과를 만들기 위한 목적이므로 굳이 여러 개의 객체를 생성할 필요가 없다.
profile
안녕하세요. 고대열입니다.

0개의 댓글