전역변수 vs 멤버변수
- Coding/Java
- 2018. 10. 28.
반응형
728x90
반응형
필드
어떠한(객체) 데이터를 제공하기 위한 역할을 한다.
-필드: 클래스 안에서 선언되는 변수
-지역변수: 메소드, 블록{} 안에서 선언되는 변수
public class Test {
// 필드선언 위치
String str;
public static void main(String[] args) {
Test a = new Test();
a.b();
}
public Test() {
// 생성자
}
public void b() {
// 메소드
String v;
System.out.println(v); // ERROR -> 지역변수 v는 자동으로 초기화되지 않기때문이다.
String str = "JAVA";
System.out.println(str); // 지역변수 str (전역변수 str이 아닌 지역변수 str이 우선시된다.)
System.out.println(this.str); // 전역변수 str
}
}
(1) 필드는 프로그램이 실행되어 종료될때까지 메모리 상에 남아있는다.
(2) 필드에서 변수를 선언할시(전역변수), 클래스내의 모든 메소드에서 this 와 함께 사용이 가능하다.
(3) 지역변수는 자동으로 초기화되지 않는다.
(4) 필드와 지역변수의 변수명이 같을시 지역변수가 우선시된다.
반응형
'Coding > Java' 카테고리의 다른 글
src/resources 폴더 안의 파일 읽어오기 (0) | 2018.10.30 |
---|---|
불필요한 객체 생성 피하기 (0) | 2018.10.28 |
new 연산자를 사용하여 인스턴스 생성 (1) | 2018.10.28 |
I/O Stream 스트림 (0) | 2018.10.28 |
Arraylist -> 배열로 변경하기 (0) | 2018.10.27 |