필드(field) 선언

Cloudman·2022년 11월 14일

프로그래머스 자바

목록 보기
11/11

❓ 필드(field)

자동차는 자동차 이름, 자동차 번호를 속성으로 가지고 있고, 자동차는 달리고 멈추는 기능이 있다.
여기에서 가지고 있는 것을 속성이라고 한다.
또 이를 자바에서는 필드(field) 라고 한다.

이것을 이번엔 학생에 비유해 보자.
학생은 이름, 학번을 속성으로 가질 수 있다.
한 반에 학생이 20명 있다면 학생 객체가 20개 있다는 의미가 된다.
각각의 학생은 이름이 구별된다. 이는 객체별로 속성의 값이 유지된다는 의미가 된다.


이를 앞서 선언했던 Car 클래스를 이용해서 설명하자면..


Car c1 = new Car();
Car c2 = new Car();

Car 라는 인스턴스가 메모리에 2개 만들어 진다. 객체별로 namenumber 라는 속성을 가진다.

c1.name = "소방차";    // c1 이 참조하는 객체의 name 을 소방차로 설정
c1.number = 1234;     // c1 이 참조하는 객체의 number 를 1234 로 설정

c2.name = "구급차";
c2.number = 1111;

// 위와 같이 이번에는 c2 가 참조하는 name, number 를 원하는 값으로 설정

위처럼 코드를 선언해 주고

System.out.println(c1.name);
// c1 이 참조하는 객체의 name 을 출력

System.out.println(c1.number);
// c1 이 참조하는 객체의 number 를 출력

System.out.println(c2.name);
System.out.println(c2.number);

출력해보면 아래와 같은 결과물을 얻을 수 있다.

이를 더 활용해서 아래와 같이도 사용할 수 있다.

String name = c2.name;
System.out.println(name);
// 결과 : 구급차

c2 가 참조하는 객체의 nameString 타입 변수 name 에다가 참조한다는 의미가 된다.

profile
코린이

0개의 댓글