Java

[Java] 클래스 설계 | 객체 생성의 기초

kimslab01 2024. 7. 31. 01:41

 

 

 

 

 

안녕하세요!

오늘은 클래스를 설계하는 방법을 알아보도록 하겠습니다.

 

클래스는 객체를 생성하기 위한 설계도라고 생각하시면 됩니다.

이때, 클래스는 필드, 생성자 메서드를 구성 멤버로 가지고 있습니다.

 

 

클래스를 만들기 위해서는 4가지 단계가 필요합니다.

 

1. 클래스 선언

 

2. 객체가 가지고 있어야 할 속성(필드) 정의

 

3. 객체를 생성하는 방식 정의(생성자 정의)

 

4. 객체가 가지고 있어야 할 행위(메서드) 정의

 

 

순서대로 예를 들어 따라가보겠습니다!!

 

 

 


 

 

 

1) 클래스 선언

 

public class Car {

}

 

공개된 자동차 클래스를 선언했다는 의미가 됩니다.

 

 

 

2) 클래스의 필드 정의

 

public class Car {
	String company; // 자동차 회사
    	String model; // 자동차 모델
    	String color; // 자동차 색상
    	double price; // 자동차 가격
    	double speed;  // 자동차 속도 , km/h
    	char gear; // 기어의 상태, P,R,N,D
    	boolean lights; // 자동차 조명의 상태
}

 

필드는 객체의 속성으로써, 데이터를 저장하는 역할을 합니다.

 

 

 

3) 클래스의 생성자 정의

 

public class Car {
	String company; // 자동차 회사
    	String model; // 자동차 모델
    	String color; // 자동차 색상
    	double price; // 자동차 가격
    	double speed;  // 자동차 속도 , km/h
    	char gear; // 기어의 상태, P,R,N,D
    	boolean lights; // 자동차 조명의 상태

	public Car() {} // 기본 생성자
}

 

public Car()는 자동차 객체의 생성 방식을 선언하는 것입니다.

생성자는 반환 타입이 없고 이름은 클래스의 이름과 동일합니다.

괄호() 안에 아무것도 없는 생성자를 기본 생성자라고 합니다!

 

 

 

4) 클래스의 메서드 정의

 

public class Car {
	String company; // 자동차 회사
    	String model; // 자동차 모델
    	String color; // 자동차 색상
    	double price; // 자동차 가격
   		double speed;  // 자동차 속도 , km/h
    	char gear; // 기어의 상태, P,R,N,D
    	boolean lights; // 자동차 조명의 상태

	public Car() {} // 기본 생성자

         double gasPedal(double kmh) {
            speed = kmh;
            return speed;
        }

        double brakePedal() {
            speed = 0;
            return speed;
        }

        char changeGear(char type) {
            gear = type;
            return gear;
        }

        boolean onOffLights() {
            lights = !lights;
            return lights;
        }

        void horn() {
            System.out.println("빵빵");
        }
}

 

gasPedal(double kmh), brakePedal(), changeGear(char type), onOffLights(), horn() 메서드를 만들었습니다!

각각의 메서드들의 앞에 있는 자료형은 반환 자료형입니다.

괄호 안에 매개값이 있는 것은 그 매개값을 전달받아 해당 값을 return하는 것이고,

없는 기본 생성자들은 메서드가 실행되면 내부에 있는 내용을 실행하면 된답니다 ㅎㅎ

 

 

 


 

 

 

 

오늘은 클래스를 설계하는 방법을 4가지로 나누어 살펴보았는데요!

이 원리를 잘 이해해야 다음에 나오는 개념들도 이해할 수 있기 때문에

꼭 이 4단계를 잘 기억해주세요 ㅎㅎ

질문은 언제나 댓글로 환영입니다!