IdoCleanCode
article thumbnail
반응형

클래스 생성

클래스 선언 시 접근자(옵션), class 키워드, 클래스명을 순서대로 적고 중괄호 {} 안에 필드, 생성자, 메서드를 작성합니다.

 

다음 클래스를 선언할때 기본 구조입니다.

접근자 class 클래스명 {
	// 필드(속성)
	// 생성자
	// 메서드
    
}
  • 접근자: 클래스의 접근 범위를 지정하며 public, private, protected, default을 사용 됩니다.
  • class: 클래스 선언을 시작하는 키워드 입니다.
  • 클래스명: 클래스의 이름을 정의하며 대문자로 시작하는 것이 관례입니다.
  • 중괄호: 클래스의 본문을 감싸며 이 안에 필드, 생성자, 메서드 정의합니다.

필드 생성

필드 선언 기본 구조는 접근자 데이터타입 필드이름 순으로 작성 됩니다.

접근자 데이터타입 필드이름;
  • 접근자: 일반적으로 private를 사용하여 외부에서 직접 접근하지 못하고, getter와  setter 메서드를 통해 접근 합니다.
  • 데이터 타입: 필드에 저장할 데이터의 유형을 정의합니다.
  • 필드이름: 필드를 구분할 수 있는 이름을 부여하는데 자바에서는 카멜 케이스를 선호합니다.

다음은 Person 클래스에 필드 선언하는 예시 입니다.

public class Person {
    private String name; 
    private int age;     
    private double height;    

    // 생성자와 메서드를 추가할 수 있습니다.
}

 

생성자 생성

생성자는 객체를 생성할 때 자동으로 호출되어 객체를 초기화하는 특별한 메서드입니다. 'new 클래스명()' 구문을 사용하여  객체를 생성하면 해당 클래스의 생성자가 호출됩니다.

 

다음 예제는 기본 생성자 생성 예제 입니다.

class Car {
    // 필드
    String color;
    String model;
    
	// 생성자 생성
    Car( ) {
            
    }

{

 

객체 생성

객체 생성은 클래스를 인스턴스화하여 메모리에서 사용 가능한 실제 객체를 만드는 과정입니다. 자바에서 객체를 생성하려면 new 키워드를 사용하여 클래스의 인스턴스를 만듭니다.

 

다음은 객체 생성 기본 구조입니다.

클래스이름 객체이름 = new 클래스이름(); // 기본 생성자
클래스이름 객체이름 = new 클래스이름(매개변수1, 매개변수2); // 매개변수 있는 생성자

 

다음은 매개변수 생성자 기준으로 객체 생성하는 예제 입니다.

public class Car {
    String color;
    String model;

    // 생성자
    public Car(String color, String model) {
        this.color = color;
        this.model = model;
    }

    public void displayInfo() {
        System.out.println("Color: " + color);
        System.out.println("Model: " + model);
    }

    public static void main(String[] args) {
        // 객체 생성
        Car myCar = new Car("Red", "Sedan"); // Car 객체 생성
        myCar.displayInfo(); // 객체의 메서드 호출
    }
}

 

참고 자료

https://idocleancode.tistory.com/387

 

[자바] 튜토리얼

자바 기본변수  객체 지향 프로그래밍클래스와 객체클래스와 객체의 정의클래스와 객체의 생성

idocleancode.tistory.com

 

반응형

'Tutorials > Java' 카테고리의 다른 글

[자바] 변수의 데이터 타입  (1) 2024.08.19
[자바] 변수의 종류  (1) 2024.08.19
[자바] 변수의 개념  (1) 2024.08.19
[자바] 클래스와 객체의 정의  (2) 2024.08.15
[자바] 튜토리얼  (0) 2024.05.29
profile

IdoCleanCode

@IdoCleanCode

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!