(→개요) |
|||
(다른 사용자 한 명의 중간 판 2개는 보이지 않습니다) | |||
5번째 줄: | 5번째 줄: | ||
public class ScopeDemo { | public class ScopeDemo { | ||
static void a() { | static void a() { | ||
int i = | int i = 10; | ||
} | } | ||
public static void main(String[] args) { | public static void main(String[] args) { | ||
15번째 줄: | 15번째 줄: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<syntaxhighlight lang='java' run> | <syntaxhighlight lang='java' run> | ||
public class DemoScope { | public class DemoScope { | ||
static int i; | static int i; | ||
static void a() { | static void a() { | ||
i = | i = 10; | ||
} | } | ||
public static void main(String[] args) { | public static void main(String[] args) { | ||
33번째 줄: | 31번째 줄: | ||
* 아래와 같이 동일한 변수명으로 멤버변수, 메소드(지역) 내 변수를 할당했을떄 어떻게 될까? | * 아래와 같이 동일한 변수명으로 멤버변수, 메소드(지역) 내 변수를 할당했을떄 어떻게 될까? | ||
<syntaxhighlight lang='java' | <syntaxhighlight lang='java' multi file=Demo.java > | ||
class Demo { | class Demo { | ||
int v = 10; | int v = 10; | ||
43번째 줄: | 41번째 줄: | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
<syntaxhighlight lang='java' | <syntaxhighlight lang='java' multi file=DemoScope2.java main run> | ||
public class DemoScope2 { | public class DemoScope2 { | ||
2021년 10월 6일 (수) 22:06 기준 최신판
개요[ | ]
- 전역 변수보다 지역변수가 우선순위가 더 높다
- 메소드(지역)내에서의 i 는 외부에 영향을 주지 않는다
Java
Copy
public class ScopeDemo {
static void a() {
int i = 10;
}
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
a(); // 문맥상 i 를 0으로 초기화 시키는 것처럼 보이지만 클래스 멤버 메소드 내에서만 사용되고 폐기된다.
System.out.println(i);
}
}
}
Loading
Java
Copy
public class DemoScope {
static int i;
static void a() {
i = 10;
}
public static void main(String[] args) {
for(i = 0; i < 5; i++) {
a();
System.out.println(i);
}
}
}
Loading
- 아래와 같이 동일한 변수명으로 멤버변수, 메소드(지역) 내 변수를 할당했을떄 어떻게 될까?
Java
Reload
Demo.java
Copy
class Demo {
int v = 10;
void m() {
int v = 20;
System.out.println(v);
}
}
Loading
DemoScope2.java
Copy
public class DemoScope2 {
public static void main(String[] args) {
Demo c1 = new Demo();
c1.m(); // -> 메소드 내 지역변수가 출력이 된다.
}
}
Loading
편집자 에어컨 Jmnote
로그인하시면 댓글을 쓸 수 있습니다.