Java向前引用容易出错的地方
来源:互联网 发布:lvs和nginx的区别 编辑:程序博客网 时间:2024/04/30 20:18
runtime在运行.class文件时,每个作用域(方法、接口、类等带语言元素都有自己的作用域)的符号表都会被至少访问两次,第一次会将所有的字段(这里只考虑类的初始化)放到符号表中,暂时不考虑初始化只,放到符号表中只是相当于一个索引,好让其他地方引用该字段时可以找到它们
1
2
3
4
5
6
7
8
class
MyClass
{
void
method()
{
System.out.println(myvar);
}
String myvar =
"var value"
;
}
1
2
3
4
5
class
MyClass {
int
method() {
return
n; }
int
m = method();
int
n =
1
;
}
1
System.out.println(
new
MyClass().method());
1
System.out.println(
new
MyClass().m);
1
2
3
4
5
class
MyClass {
int
method() {
return
n; }
int
n =
1
;
int
m = method();
}
1
System.out.println(
new
MyClass().m);
1
2
3
MyClass myClass =
new
MyClass();
System.out.println(myClass.n);
// 输出1
System.out.println(myClass.m);
// 仍然输出0
1
2
3
4
5
class
MyClass {
static
int
method() {
return
n; }
static
int
m = method();
// 直接访问m,仍然会输出0
static
int
n =
1
;
}
0 0
- Java向前引用容易出错的地方
- Java向前引用容易出错的地方
- Java向前引用容易出错的地方
- Java向前引用容易出错的地方
- Java向前引用容易出错的地方
- java的一些容易出错的地方!
- delete容易出错的地方
- php容易出错的地方
- C++ 容易出错的地方
- UINavigationController容易出错的地方
- JAVA日常工作容易出错的地方小汇总
- AS3几个容易出错的地方
- C、C++容易出错的几个地方
- C/C++中容易出错的地方
- shell脚本容易出错的地方
- 一些容易出错的小地方
- C语言容易出错的地方
- js中容易出错的地方
- 设计遥控车门开关(RKE)系统
- 参加广州传智播客网页平面设计培训让你成为IT达人
- 一篇比较简明的正则表达式教程 《正则表达式使用详解简介》
- 清除Eclipse工作空间列表
- JAVA 线程中的异常捕获
- Java向前引用容易出错的地方
- Android动画学习Demo(2) 关于Property Animation的用法及总结
- cubieboard 将linux debian 系统灌入Nand中的操作记录
- all about Oracle memory - Oracle的内存架构组成
- Cubieboard安装Debian在Nand中
- 为Cubieboard打造完美Debian系统
- c# [ImportDll()] 知识小结
- Hadoop 权限管理
- UVa 2678 Subsequence / 二分