필드 (자바) 편집하기
최신판 | 당신의 편집 | ||
2번째 줄: | 2번째 줄: | ||
==특징== | ==특징== | ||
+ | |||
필드의 경우 다른 지역변수들과 다르게 초기화를 하지 않아도 기본값이 자동으로 초기화 된다는 특징을 가지고 있다. String의 경우 null, int의 경우 0으로 초기화 된다. 그리고 해당 [[클래스]] 내의 모든 [[메소드]]에 접근이 가능하다. | 필드의 경우 다른 지역변수들과 다르게 초기화를 하지 않아도 기본값이 자동으로 초기화 된다는 특징을 가지고 있다. String의 경우 null, int의 경우 0으로 초기화 된다. 그리고 해당 [[클래스]] 내의 모든 [[메소드]]에 접근이 가능하다. | ||
생성의 경우 객체가 생성될 때 함께 생성되며, 생성된 객체를 더 이상 참조하지 않을 때 가비지 컬렉터(Garbage Collector)에 의해서 제거된다.<ref name="개인블로그">JOKER, 〈[https://blog.naver.com/heartflow89/220956313502 자바 필드(field)-전역변수,멤버변수]〉, 《개인블로그》, 2017-03-13</ref> | 생성의 경우 객체가 생성될 때 함께 생성되며, 생성된 객체를 더 이상 참조하지 않을 때 가비지 컬렉터(Garbage Collector)에 의해서 제거된다.<ref name="개인블로그">JOKER, 〈[https://blog.naver.com/heartflow89/220956313502 자바 필드(field)-전역변수,멤버변수]〉, 《개인블로그》, 2017-03-13</ref> | ||
− | 필드를 | + | 필드를 선언 할 때는 접근 지정자, 필드의 타입, 필드의 이름 세가지를 정해줘야 한다. 접근 지정자에는 public과 private가 있으며, public은 모든 클래스로 부터 접근 가능, private는 클래스 내부에서만 접근이 가능하며 이 외에는 접근이 불가능하다.<ref name="개인블로그3">Yown, 〈[https://luckyyowu.tistory.com/193 Java 08 : 필드와 메소드]〉, 《개인블로그》, 2014-07-30</ref> |
필드는 객체의 고유 데이터, 객체가 가져야할 부붐, 객체의 현재 상태 데이터를 저장한다. 자동차를 예로 들 때 자동차에 필요한 고유 데이터는 제작회사, 모델명, 색, 최고 속도가 필요하고 현재 속도, 엔진 회전 수의 상태 데이터와 차체, 엔진, 타이어와 같은 부품이 필요하다가 필요하다. 이런 자동차를 클래스로 설계 할 때 이전에 말한 정보들은 클래스의 필드로 선언이 된다. | 필드는 객체의 고유 데이터, 객체가 가져야할 부붐, 객체의 현재 상태 데이터를 저장한다. 자동차를 예로 들 때 자동차에 필요한 고유 데이터는 제작회사, 모델명, 색, 최고 속도가 필요하고 현재 속도, 엔진 회전 수의 상태 데이터와 차체, 엔진, 타이어와 같은 부품이 필요하다가 필요하다. 이런 자동차를 클래스로 설계 할 때 이전에 말한 정보들은 클래스의 필드로 선언이 된다. | ||
40번째 줄: | 41번째 줄: | ||
=== 활용 위치 === | === 활용 위치 === | ||
[[파일:필드 선언 위치.png|380픽셀|썸네일|필드 위치]] | [[파일:필드 선언 위치.png|380픽셀|썸네일|필드 위치]] | ||
− | [[클래스]] 내의 필드는 멤버 변수 혹은 전역 변수라고도 하기 때문에 [[클래스]] 내부 중괄호 안 어느 위치에서나 선언이 가능하다. 하지만 [[메소드]] 혹은 생성자의 밖에 선언되어야 한다.<ref name="개인블로그2">Ara Blog, 〈[https://hunit.tistory.com/154 자바(Java)〃필드와 변수의 선언위치와 초기값(전역변수,지역변수)]〉, 《개인블로그》, 2015-11-02</ref> | + | [[클래스]] 내의 필드는 멤버 변수 혹은 전역 변수라고도 하기 때문에 [[클래스]] 내부 중괄호 안 어느 위치에서나 선언이 가능하다. 하지만 [[메소드]] 혹은 생성자의 밖에 선언되어야 한다. |
+ | <ref name="개인블로그2">Ara Blog, 〈[https://hunit.tistory.com/154 자바(Java)〃필드와 변수의 선언위치와 초기값(전역변수,지역변수)]〉, 《개인블로그》, 2015-11-02</ref> | ||
+ | |||
public class 클래스이름 { | public class 클래스이름 { | ||
139번째 줄: | 142번째 줄: | ||
hu1.cm=170; | hu1.cm=170; | ||
//hu1의 kg과 cm이라는 필드에 값을 넣음 | //hu1의 kg과 cm이라는 필드에 값을 넣음 | ||
+ | |||
} | } | ||
} | } | ||
196번째 줄: | 200번째 줄: | ||
도트 연산자는 객체 접근 연산자로 객체가 가지고 있는 필드, 메소드를 사요하고자 할 때 사용된다.<ref name="개인블로그4">kephl, 〈[https://kephilab.tistory.com/46 3. Java 자바 - 클래스의 구성 멤버]〉, 《개인블로그》, 2020-05-15</ref> | 도트 연산자는 객체 접근 연산자로 객체가 가지고 있는 필드, 메소드를 사요하고자 할 때 사용된다.<ref name="개인블로그4">kephl, 〈[https://kephilab.tistory.com/46 3. Java 자바 - 클래스의 구성 멤버]〉, 《개인블로그》, 2020-05-15</ref> | ||
+ | |||
+ | |||
{{각주}} | {{각주}} | ||
204번째 줄: | 210번째 줄: | ||
* Ara Blog, 〈[https://hunit.tistory.com/154 자바(Java)〃필드와 변수의 선언위치와 초기값(전역변수,지역변수)]〉, 《개인블로그》, 2015-11-02 | * Ara Blog, 〈[https://hunit.tistory.com/154 자바(Java)〃필드와 변수의 선언위치와 초기값(전역변수,지역변수)]〉, 《개인블로그》, 2015-11-02 | ||
* kephl, 〈[https://kephilab.tistory.com/46 3. Java 자바 - 클래스의 구성 멤버]〉, 《개인블로그》, 2020-05-15 | * kephl, 〈[https://kephilab.tistory.com/46 3. Java 자바 - 클래스의 구성 멤버]〉, 《개인블로그》, 2020-05-15 | ||
+ | |||
== 같이 보기 == | == 같이 보기 == |