java基础测试
public class Inc {
public static void main(String[] args) {
Inc inc = new Inc();
int i = 0;
inc.fermin(i);
i = i++; //陷阱
System.out.println(i);
}
void fermin(int i){
i++;
}
}
会输出什么?
答案解说:
可以用javap工具来观察内存的运动:
1,新建一个文件 c:/T.java :
class T {
public static void main(String[] args){
int i = 0;
i
= (i++) ;
System.out.println(i);
}
}
2,在cmd中执行: cd \ ,然后执行“ javac T.java && javap -c -verbose T >
Tout.txt && java T ”
打开Tout.txt文件,其中一段字节码是这样的:
public static void main(java.lang.String[]);
Code:
Stack=2,
Locals=2, Args_size=1
0: iconst_0
1: istore_1
2: iload_1
3: iinc 1, 1
6: istore_1
7: getstatic #2; //Field java/lang/System.out
java/io/PrintStream;
10: iload_1
11: invokevirtual #3; //Method java/io/PrintStream.println
I)V
14: return
LineNumberTable:
line 3: 0
line 4: 2
line 5: 7
line 6:
14
}
其中的2,3步就是完成i++,是先load(把i的值压栈)再加1.
如果是++i,那么2,3两步执行顺序正好相反。这里有两个stack进行数据存储。
【2008-2】
|
相关推荐
在这个"JAVA基础测试"中,我们将深入探讨这些核心主题。 首先,Java语法是学习任何编程语言的基础。Java采用C++类似的语法,但更加简洁和严谨。例如,变量声明需要指定数据类型,如int、double、boolean等。Java还...
这份"JAVA基础测试题(含答案)"的压缩包显然旨在帮助学习者检验和巩固他们的Java基础知识。让我们一起探讨这些测试题可能涵盖的知识点,以及这些知识点在实际编程中的重要性。 1. **Java语法基础**:测试题可能会...
"北大青鸟内部JAVA基础测试题" 本测试题目涵盖了 Java 基础知识的多个方面,包括基本数据类型、变量声明、数组、运算符、控制结构、方法、字符串等。下面是对每个问题的详细解释: 1. 在 Java 语言中,基本数据...
Java基础测试题答案 Java 是一种广泛应用的编程语言,Java 基础知识是每个程序员都需要掌握的。下面是 Java 基础测试题答案中的知识点总结: Java 类和对象 在 Java 中,每个类只能有一个 public 修饰的类,这是...
Java基础测试题.doc 本资源是Java基础知识测试题,涵盖了Java语言的基本概念、语法、面向对象编程、继承、多态、接口、异常处理、集合框架等方面。下面是对每道题的详细解释: 1. 变量命名规则:在Java中,变量名...
"北大青鸟一期java基础测试题"是一个专门针对初学者设计的练习集,旨在帮助学员巩固和检验他们在Java学习过程中的理解和技能。 试题文档"笔试试题.doc"可能包含了以下几类问题: 1. **Java语法**:这可能包括基本...
java基础测试题.pdf
JAVA职业素养及面试和JAVA基础测试题题,帮你轻松应对java面试
Java基础测试题2(附答案).pdf
文件名:10、java基础测试题题目练习及答案分析.rar文件类型:word格式使用方式:直接解压,无密码
文件名:6、java基础测试题题目练习及答案解析.rar文件类型:word格式使用方式:直接解压,无密码
"JAVA基础测试(二).txt"和"JAVA基础测试题(一).txt"很可能是两个包含了多种Java基础题目和解答的文本文件,涵盖了Java语法、面向对象特性、异常处理、集合框架、输入输出流等关键知识点。这些测试题通常包括选择...
Java基础练习题由本人整理并上传,非常适合于初学者加强巩固自己的知识,编程学好的唯一途径就是多练习。
编写一个截取字符串的函数,输入为一个字符串和一个整型数字,输出为按整型数字为长度截取的字符串序列。例如输入“国家自然科学基金项目.doc”,4,应该输出为(20分) 国家自然 科学基金 项目.doc ...
可以看看检测一下自己的基础看看是否过关 只是一些基础概念的测试 以及后面的五道小编程题 测试一下自己 对基础的掌握
java基础语法、用法,新手必看的内容。 本人提供就是为了能让更多的新手学习,一遍达到自己的梦想。虽是基础但是也不是微不足道的,也是有作用的。我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,...
【Java基础测试项目详解】 Java作为一种广泛使用的编程语言,其基础知识是每个开发者必须掌握的核心技能。"BasicProject: Java 基础测试项目"旨在帮助初学者和有经验的开发者巩固与测试他们的Java编程能力。这个...