java的一些坑
1.Java设置环境变量设置的系统环境变量,不是用户环境变量
2.java_home环境变量----使得其他相关环境变量的配置更加方便。
3.java文件的编译,需要到该文件的路径下。运行时使用的命令是
java 类名(并且没有后缀名.class)
4. classpath作用:java命令 从哪里加载字节码文件执行,告诉java虚拟机所有的可执行文件.class都在哪
- 在没有配置classpath环境变量时,java命令在找class文件时是默认在当前目录下寻找的。
- 配置过classpath环境后,java命令是按照classpath变量中的路径来寻找class文件的,这就是为什么classpath变量中配置没有当前目录时,即使当前目录中有class文件,java命令仍然不能正常运行的原因。
5.在主方法中 args 表示运行参数
6.两个short类型的数相加,会被自动转型为int类型。测试后,比int字节小的类型都会被自动转为int类型,比int字节大的不会。如果任何运算单元的长度都不超过int,那么运算结果就按照int来计算
7.final修饰一个变量时,该变量只有一次赋值的机会。
8.如果有任何运算单元的长度超过int,那么运算结果就按照最长的长度计算
9.需要注意的是,如果在通过nextInt()读取了整数后,再接着读取字符串,读出来的是回车换行:"\r\n",因为nextInt仅仅读取数字信息,而不会读取回车换行"\r\n".
所以,如果在业务上需要读取了整数后,接着读取字符串,那么就应该连续执行两次nextLine(),第一次是取走回车换行,第二次才是读取真正的字符串
10.如果使用else if,判断一旦成立,后面的就不会执行,节约了运算成本。
11.在方法内,无法修改方法外的基本类型参数。
12.什么情况改用什么修饰符呢?
- 属性通常使用private封装起来
- 方法一般使用public用于被调用
- 会被子类继承的方法,通常使用protected
- package用的不多
13.当一个属性被static修饰的时候,就叫做类属性,又叫做静态属性。当一个属性被声明成类属性,那么所有的对象,都共享一个值。访问类属性的方法为类.类属相。