이롭게 현명하게

[JAVA] 자바 클래스 필드 본문

JAVA

[JAVA] 자바 클래스 필드

dev_y.h 2023. 4. 13. 18:45
728x90
반응형


public class ClassName{
	//필드 : 객체의 데이터가 저장되는 곳
    	int fieldName;
    
	//생성자 : 객체 생성 시 초기화 역할 담당
    	ClassName(){ ... }

	//메소드 : 객체의 동작에 해당하는 실행 블록
    	void methodName() { ... }
}

[필드]

필드 (Field) : 객체의 고유 데이터, 객체가 가져야 할 부품, 객체의 현재 상태 데이터를 저장하는 곳, 클래스 멤버변수라고도한다.

- 클래스 중괄호{} 블록 어디서든 존재할 수 있다.

- 생성자 선언과 메소드 선언의 앞과 뒤 어떤 곳에서도 필드 선언이 가능. 메소드 중괄호 블록 내부에는 선언될 수 없다.

- 생성자와 메소드 중괄호 블록 내부에 선언된 변수 : 로컬 변수

- 필드의 초기값은 필드 선언 시 주어질 수 있고, 생략될 수 있다.

- 초기값이 지정되지 않은 필드들은 객체 생성 시 자동으로 기본 초기값으로 설정된다.

// Car.java

public class Car {
	// 고유 데이터 //
	String company;
	String model;
	String Color;
	int maxSpeed;
	// 상태 //
	int speed;
	int rpm
	// 부품 //
	Body body;
	Engine engine;
	Tire tire;
}

 

 

클래스 내부의 생성자나 메소드에서 사용할 경우 단순히 필드 이름으로 읽고 변경하면 된다.

클래스 외부에서 사용할 경우 클래스로부터 객체를 생성한 뒤 필드를 사용해야 한다.

필드는 객체에 소속된 데이터이므로 객체가 존재하지 않으면 필드도 존재하지 않기 때문이다.

// Car.java

public class Car {
	// 고유 데이터 //
	String company;
	String model;
	String Color;
	int maxSpeed;
	// 상태 //
	int speed;
	
    // 생성자
    Car(){
    	speed = 0;
    }
    
    //메소드
    void method(){
    	speed = 10;
    }
}
// Person.java

public class Person {

	void method() {
		Car mycar = new Car(); // Car 객체 생성
		mycar.speed = 80; // Car 클래스에 있는 필드를 사용
	}
}

일반 변수와의 차이점은 변수는 자신이 선언된 생성자 또는 메소드 블록 내부에서만 사용할 수 있지만, 필드는 생성자와 모든 메소드에서 사용이 가능하다.

외부 클래스를 사용할 경우에는 외부 클래스의 객체를 먼저 생성해야 한다.

도트( . ) 연산자 : 객체 접근 연산자로 객체가 가지고 있는 필드나 메소드를 사용하고자 할 때 사용된다.

더보기

[예제]

외부 클래스에서 Car 필드값 읽기와 변

// Car.java //

public class Car {
	
	String company = "현대자동차";
	String model = "그랜저";
	String Color = "검정";
	int maxSpeed = 350;
	
	int speed;
	
}
// Main.java

public class Main {

	public static void main(String[] args) {
		Car mycar = new Car();
		
		System.out.println(mycar.Color);
		System.out.println(mycar.company);
		System.out.println(mycar.maxSpeed);
		System.out.println(mycar.model);
		System.out.println(mycar.speed);
		mycar.speed = 60;
		System.out.println(mycar.speed);
	}

}

 

 

 

[JAVA] 자바 클래스 메소드

목차 메소드 선언 리턴타입 매개 변수 선언 매개변수의 수를 모를 경우 리턴(return) 문 메소드 오버로딩 메소드 (method) : 객체의 동작에 해당하는 중괄호 블록 리턴타입 메소드이름([매개변수선언

devyihyun.tistory.com


잘못된 정보는 댓글에 남겨주시면 감사하겠습니다!😊

댓글과 좋아요는 큰 힘이 됩니다!

 

더보기

[ 참고자료 ]

 

 

 

 

728x90
반응형

'JAVA' 카테고리의 다른 글

[JAVA] 자바 클래스 메소드  (0) 2023.04.18
[JAVA] 자바 클래스 생성  (0) 2023.04.14
[JAVA] 자바 객체와 클래스  (2) 2023.04.12
[JAVA] 객체 지향 프로그래밍  (0) 2023.04.11
[JAVA] 데이터 타입 분류와 메모리 영역  (0) 2023.04.10
Comments