본문 바로가기
반응형
class Car {
    private String modelName;
    private int modelYear;
    private String color;
    private int maxSpeed;
    private int currentSpeed;
    }

위에 코드를 보자

memberId, itemName, itemPrice, discountPrice가 private으로 선언되어있다. 이렇게 선언된 멤버 변수는 클래스 내부에서만 직접 접근이 가능하며, 외부에서는 직접 접근할 수 없으므로 클래스의 캡슐화를 보장할 수 있다. 

그렇기에 클래스 외부에서 객체를 생성하고 초기화하기 위해서는 생성자를 사용해야 한다. 생성자는 클래스의 인스턴스를 생성할 때 사용되는 특수한 메서드로, 객체의 초기 상태를 설정하는 역할을 한다. 

 

생성자란?

생성자는 인스턴스가 생성될 때 호출되는 '인스턴스 초기화 메서드'이다. 따라서 인스턴스 변수의 초기화 작업에 주로 사용되며, 인스턴스 생성 시에 실행되어야 할 작업을 위해서도 사용된다. 

생성자의 조건은 다음과 같다.

  • 생성자의 이름은 클래스의 이름과 같아야 한다.
  • 생성자는 리턴값이 없다.

생성자의 특징은 다음과 같다.

  • 생성자는 반환값이 없지만, 반환 타입을 void형으로 선언하지 않는다.
  • 생성자는 초기화를 위한 데이터를 인수로 전달받을 수 있다.
  • 객체를 초기화하는 방법이 여러 개 존재할 경우에는 하나의 클래스가 여러 개의 생성자를 가질 수 있다. 즉, 생성자도 하나의 메소드이므로, 메소드 오버로딩이 가능하다는 의미한다.
class Car {
    private String modelName;   
    private int modelYear;     
    private String color;      
    private int maxSpeed;  
 
    // 생성자
    Car(String modelName, int modelYear, String color, int maxSpeed) {
        this.modelName = modelName;         // 전달받은 modelName으로 초기화
        this.modelYear = modelYear;         // 전달받은 modelYear로 초기화
        this.color = color;                 // 전달받은 color로 초기화
        this.maxSpeed = maxSpeed;           // 전달받은 maxSpeed로 초기화
    }
 
    // Getter 메서드
    public String getModel() {
        return this.modelYear + "년식 " + this.modelName + " " + this.color;
    }
}
 
public class Method02 {
    public static void main(String[] args) {
        Car myCar = new Car("아반떼", 2016, "흰색", 200); // Car 객체 생성과 동시에 생성자 호출
        System.out.println(myCar.getModel()); // 모델 정보 출력
    }
}

// 출력 결과 : 2016년식 아반떼 흰색

 

혹시 Getter 메서드가 생각이 안난다면 아래 링크의 사이트를 방문해서 복습해보세요 ㅎㅎ

화이팅 :)

2023.07.15 - [코딩/JAVA] - [JAVA] Getter와 Setter 개념과 사용방법

 

[JAVA] Getter와 Setter 개념과 사용방법

JAVA 공부를 하다보면 객체를 생성한 후 생성자를 생성한 후에 Getter와 Setter를 설정하는 경우가 많다. Getter와 Setter란? Getter와 Setter는 객체 지향 프로그래밍에서 사용되는 메서드로, 객체의 데이터

quddkflty.tistory.com

 

반응형