1.java基本类型的默认值和取值范围
int 0 -2^31—-2^31-1
short 0 -2^15—-2^15-1
long 0 -2^63—-2^63-1
char ‘ \u0000′ 0—-2^16-1
byte 0 -2^7—-2^7-1
float : 0.0f -2^31—-2^31-1
double : 0.0d -2^63—-2^63-1
boolean: false true\false
2.Java调试器?如果编译器返回程序代码的错误,可以用它对程序进行调试。
jdb.exe
3.null在java中是关键字,但是NULL不是,所以NULL可以作为标识符
4.Java内存模型------类加载器
类加载器分为 引导类加载器(bootstrap class loader) 扩展类加载器(extensions class loader) 系统类加载器(system class loader)
和自定义类加载器(java.lang.ClassLoader 的子类)
类的加载首先由父类进行委托,当父类没有加载能力时再交由子类进行处理。加载过程中会先检查类是否被已加载,检查顺序是自底向上,从Custom ClassLoader到BootStrap ClassLoader逐层检查
引导类加载器(bootstrap class loader):它用来加载 Java 的核心库,是用原生代码来实现的
扩展类加载器(extensions class loader):它用来加载 Java 的扩展库。
系统类加载器(system class loader):它根据 Java 应用的类路径(CLASSPATH)来加载 Java 类
tomcat 为每个 App 创建一个 Loader,里面保存着此 WebApp 的 ClassLoader。需要加载 WebApp 下的类时,就取出 ClassLoader 来使用
5.下列代码片段中,存在编译错误的语句是()
byte b1=1,b2=2,b3,b6,b8;
final byte b4=4,b5=6,b7;
b3=(b1+b2); /*语句1*/
b6=b4+b5; /*语句2*/
b8=(b1+b4); /*语句3*/
b7=(b2+b5); /*语句4*/
System.out.println(b3+b6);
语句一,三,四
语句一 b1+b2会转换为int 需要用byte进行强转
语句二 b4和b5均为final类型的所以结果还是final类型的,不会出错
语句三 同语句一需要强转
语句四 同语句三