필드
- 객체의 고유데이터
- 객체가 가져야 할 부품
- 객체의 현재 상태 데이터 등을 저장
필드선언
- 클래스 중괄호 블록 어디서든 존재 가능
- 생성자와 메소드 중괄호 블록 내부에는 선언 불가 (생성자와 메소드 내부블록에서는 필드는 생성x 로컬변수생성o)
- 변수와 선언 형태 유사하나 변수 아님에 주의
Class XXX{
String company = "현대자동차";
String model = "그랜저";
int maxSpeed = 300;
int producionYear;
int currentSpeed;
boolean engineStart;
} // 필드: 클래스의 시작과 끝 중괄호 사이에 선언됨
※생성자:클래스 이름,괄호,중괄호 : XXX() {
String model = "그랜저";//생성자 안에서 선언되면 필드x 로컬 변수o
}
※메소드: void method(...) {
}
- 필드 선언에서 초기값은 주어질수도 ,생략할 수도 있음
- 초기값이 지정되지 않은 필드는 객체 생성 시자동으로 기본 초기값 설정
calss XXX {
int x = 10; //초기값이 주어진경우
int y; //초기값이 주어지지 않은 경우 int기 때문에 초기값이 0으로 저장됨
}
필드사용
- 필드 값 읽고 변경하는 작업
- 클래스 내부의 생성자 및 메소드에서 바로 사용 가능
- 클래스 외부에서 사용하는 경우 : 반드시 클래스로부터 1. 객체 생성한 뒤 2. 참조 변수 통해 사용
예제
Car라고 하는 클래스에서 필드의 값을 선언
※같은 클래스 생성자나 메소드안에서는 이름으로 변경 하거나 읽는거 가능
Car클래스 바깥쪽에 carExample에서 사용할 경우
반드시 먼저 객체 생성 : Car myCar = new Car();
필드는 객체의 데이터기 때문에 객체가 없으면 필드도 없다.
필드값 읽거나 변경할때도 객체의 이름. 앞에 붙어야 변경이나 읽기가능
'Java' 카테고리의 다른 글
[Java] 프로그래밍이란 (0) | 2022.02.14 |
---|---|
[Java] 생성자 (0) | 2022.02.09 |
[JAVA] 객체 지향 프로그래밍 (0) | 2022.02.02 |
[JAVA ] 참조 타입(배열) (0) | 2022.01.31 |
[JAVA ] 참조 타입(참조타입과 참조변수) (0) | 2022.01.30 |