1. java的特点
java语言的特点就是"一次编译,到处运行",其跨平台性的原因就在于,java语言兼顾解释性和编译性语言的特点,首先将java源程序通过java编译器程序编译成一种与平台无关的字节码文件,然后利用特定平台上的特定Java虚拟机将字节码翻译成机器码,提交给相应的操作系统执行。java具有三方面的内涵,它既是一种编写语言,又是一套开发工具,也是一个运行环境。
2. 环境变量path和classpath的作用
path的作用:指定命令搜索路径,当我们要执行某个命令时,操作系统首先在当前目录下查找这个命令,如果当前目录没有这个命令,操作系统就会沿着path环境变量所指定的目录一次去查找这个命令文件,并以最先找到的为准。(%path%代表环境变量path原先的取值)
classpath的作用:指定类搜索路径,如果没有设定当前路径"."的话,Java虚拟机会沿着classpath环境变量指定的路径去寻找需要解释执行的类,而不在当前目录查找。
注:设置环境变量的路径时,等号"="左右不能有空格,所设置的目录名中不能有空格或者中文字符,所以应尽量避免将源文件存放在目录名有空格或者中文字符的目录内。
3. 关于源文件中的类
在一个源文件中可以编写多个类
如果一个源文件中有多个类,那么编译源文件会生成多个类文件
如果某个类的前面加了关键字,那么这个类所在的源文件的名称必须和这个类的名称一致,例如:类的名字为Test1,那么源文件的名称必须为Test1.java
一个源文件中不能存在多个有相同关键字的类
在命令行窗口中运行class文件时,只需输入该文件名称即可,不应带上扩展名.class
4. 类型转换之 system.out.println('a'+1) 和 system.out.println(''''+'a'+1) 的区别
前者的输出结果是98,而后者的输出结果是a1
这是因为:
前者的字符a与整数1相加,a会被提升为整数类型,实际上这里就涉及到数据类型的自动转换(也叫隐式转换),而字符所对应的数字97与1相加,显示出来的是整数98;
而后者因为空字符串''''与字符a以及整数1相加,就代表这个空字符串与字符a以及整数1相连,生成一个新的字符串,那么它所显示出来的结果就是a1
5.对象比较之 "=="运算符与equals()方法的区别
"=="运算符用于比较两个引用变量的值是否相等
equals()方法用于比较两个对象中的内容是否完全一样