一.java基础
1.数组定义
int [] arr = new int[3]; 定义了一个int类型的数组,数组名是arr,数组的初始大小为3
int [] arr = {};
2.成员变量和局部变量的区别
3.java修饰符区别
4.比较
== 基本数据类型比较的是值是否相同,引用数据类型比较的是地址值是否相同
但是 s1 = new String(“zxb”) s2 = “zxb” s3 = “zxb”
s1和s2,s3不等 但s2和s3相等 是因为 常量池
调用对象的equals()方法,此方法是有object继承而来的,String的equals方法是比较字符串值是否相等,其他对象的equals方法要看具体实现了
5.File IO
文件io 参考apache commons io 使用方法
http://ifeve.com/commons-io/
6.static关键字说明
可以用来修饰类的成员变量和成员方法
被static修饰后 所有对象共享,不在属于单个对象了
可以使用类名调用
静态的加载优先于对象,伴随着类加载而加载
7.构造代码块
作用抽取构造方法中的共性,每次创建对象都会执行,并且在构造方法之前执行
静态代码块
随着类的加载而加载,只加载一次(不管创建几次对象),一般用来做类的初始化
8.final
可以修饰类 那么类不可以被继承
修饰成员变量 那么成员变量不可以被修改
修饰成员方法 那么成员方法不能被重写
9.HashSet 去重原理
HashSet添加元素时 会调用hashCode,equals两个方法
hashCode && (地址值 | equals)
hashCode 相同,同时地址值或equals值相同,那么才认为元素重复
10.自定义异常
异常分编译时异常(Exception)和运行时异常(RuntimeException)
自定义异常时可以选择继承上述之一
public class MyException extends RuntimeException{
public MyException() {
}
public MyException(String message) {
super(message);
}
}
用法 直接 throw new MyException(message);