目录
二.Java号称“一次编译、处处运行”(Write Once, Run Anywhere!),怎么理解这句话?为使编译好的程序能运行,需先在操作系统安装什么?
三.对比c版本的与Java版本HelloWorld代码,有何不同?
四.怎么比较两个字符串内容是否相同?可以直接用==吗?为什么对基本数据类型可以直接使用==?对引用数据类型不行?
五.x是Integer类型,1是int类型,为什么他们可以相加,使用了什么技术?z是int,x与y是Integer类型,却可以直接将x + y 赋给z,使用了什么技术?
六.下面这段代码,本意是要达到什么效果?能运行成功吗?为什么?怎么获得String的trim()方法的说明?
课前问题列表
一.使用Java能编写哪些类型的程序?试举至少两个例子。
1.Web 服务与中间件
2.嵌入式的小应用
3.云计算、大数据相关内容
二.Java号称“一次编译、处处运行”(Write Once, Run Anywhere!),怎么理解这句话?为使编译好的程序能运行,需先在操作系统安装什么?
1.Java 虚拟机(JVM)是运行 Java 字节码的虚拟机。JVM 有针对不同系统(window,mac等等)的特定实现,目的是使用相同的字节码,它们都会给出相同的结果。字节码和不同系统的 JVM 实现是 Java 语言“一次编译,随处可以运行”的关键所在。
2.需要在操作系统安装Java虚拟机
三.对比c版本的与Java版本HelloWorld代码,有何不同?
java中输出HelloWorld: System.out.println("HelloWorld");
c中输出HelloWorld: printf("HelloWorld");
c中调用printf函数 java调用System.out.print方法。
c语言用 int main() 定义主函数,有返回值。 java 用public static void main(String[] args)来定义主方法,无返回值。
四.怎么比较两个字符串内容是否相同?可以直接用==吗?为什么对基本数据类型可以直接使用==?对引用数据类型不行?
不能,应该使用equals();方法来比较。
==对于基本数据类型比较的是所带的数据,而对于引用类型来说比较的是是否指向同一个对象。
五.x是Integer类型,1是int类型,为什么他们可以相加,使用了什么技术?z是int,x与y是Integer类型,却可以直接将x + y 赋给z,使用了什么技术?
使用了自动装箱与自动拆箱。
自动装箱:将基本类型装换为对应的包装类。
自动拆箱:将包装类装换为对应的基本类型。
六.下面这段代码,本意是要达到什么效果?能运行成功吗?为什么?怎么获得String的trim()方法的说明?
本意是要获取字符串x的长度,并打印去除前导和尾部空格后的字符串。、
不能,因为x未初始化,运行前以报错。
jdk API文档。