1. JAVA编译原理。编写 *.java源文件,编译后生成*.class,然后再由虚拟机执行。Java运行中,会根据不同的操作系统提供给一个JVM版本支持,所以JAVA最大的特点是跨平台。
2. 两个环境属性
Path:JDK安装完之后的Bin目录。
ClassPath:用于找到类所在的目录。Java命令行必须先找到classpath目录之后才能进行类的执行操作。
例如:在F:\test下有个Hello.class文件,在D盘的命令行窗口执行:set classpath=F:\test,然后再D盘根目录下执行Hello.java命令,一样可以执行Hello.class文件。使用set classpath命令将查找路径指向了F:\test目录,所以运行时会从F:\test目录下查找所需要的类。(命令行退出后需要重新指向类目录。默认classpath是指向命令行当前窗口所在的目录)
设置方法:SET CLASSPATH=路径;路径;
3. public class 和 class 声明的区别
public class:如果使用public class 进行声明,则类名必须与文件名完全一致。在一个*.java文件中只能有一个 public class。
class:如果在一个*.java文件内声明了多个class{}则编译后会生成多个*.class文件。在一个*.java文件中能有多个class{}声明。
4. 中文编码问题:
在使用命令行编译*.java的源文件时如果里面有中文会提示“警告:编码 GBK 的不可映射字符”。
解决办法:编译时 需要添加参数:> javac -encoding UTF-8 *.java 或者 打开*.java文件另存为ANSI编码文件即可。
5. Java报"exception in thread main java.lang.noclassdeffounderror"错误。
·一般情况是环境配置问题。
·环境配置正确,编译通过,运行报错。可以尝试在盘符下新建一个文件夹命令行进入文件夹即可运行。根目录直接无法运行.class文件
6. Java的不能使用嵌套注释
JAVA中使用/*......*/进行多行注释,但是不能使用嵌套注释,因为JVM遇到第一个/*会把以下的行当作注释,直到遇到下一个*/表示结束。如果使用嵌套注释那么后面的一个*/Java编译器不会把它单做注释。
例: /* 多行注释 /* 错误的嵌套多行注释*/ */
7. Java的原生数据类型(Primitive Data Type)
Java原生数据类型一共八种:int byte short long float double char boolean
8. 运算符
·当有若干个变量参与运算时, 结果类型取决于这些变量中表示范围最大的那个变量类型。比如,参与运算的变量中,有整型 int,有双精度浮点型 double,有短整型short,那么最后的结果类型就是 double。
注意:类名首字母必须大写。