java基础笔记
1、抽象类和接口都不可以实例化,需要子类的向上转型才可以实例化。
2、类方法(加static) 实例方法(不加static),前者可通过类.方法名调用,后者要创建对象才能调用。this.调用的是实例方法;静态方法属于类的成员,实例方法属于对象的成员。
3、接口继承只能继承接口不能继承类,接口只能继承接口,但可以多继承,类只能继承一个类,实现多个接口。
4、抽象类和接口都不能实例化。抽象类中可以有成员变量(也能有静态变量),但是接口中只能有静态变量;抽象类可以有构造方法,接口没有构造方法;抽象类中的方法不一定是抽象方法,接口中的方法都是抽象方法;接口只能用public,抽象类可以用public, protected,private,dafault。
5、静态成员变量或静态代码块>main方法>非静态成员变量或静态代码块>构造函数。
6、String类型为final类型,为引用传递。
7、构造函数没有返回值,也不能写void。
8、关于基本数据类型的操作
9、jvm的功能
10、线程安全的有:Vector、stack、Hashtable、enumeration
11、Hibernate中get为立即加载,load为延迟加载。
12、volitile关键字:有可见性;但不具备原子性;可用于提供线程安全。对volatile变量的操作会造成阻塞;不依赖与其他锁机制,多线程环境下的计数器可用其实现。
13、统一类中调用不同构造方法用this(x),其中x是被调用构造函数的参数;调用父类构造方法才用super。
14、Hashtable采用synchronized关键字来实现线程安全,concurrentHashMap采用分段锁机制来确保安全;SimpleDateFormat对象线程不安全