1 DateFormat 日期/时间格式化子类的抽象类,
提供了很多类方法,以获得基于默认或给定语言环境和多种格式化风格的默认日期/时间 Formatter。格式化风格包括 FULL、LONG、MEDIUM 和 SHORT
指定 地点,可以在获取实例的时候指定getDateInstance(int style,Locale locale);没有直接设置地点的方法
2 ==和equals
对于引用类型变量,运算符==比较的是两个变量是否引用同一对象 ,比较的是地址。 equals则会比较值是不是相等。
3. 线程
两种定义方式
!) 继承Thread类 重写run方法,在线程start后JVM会自动调用该方法
不建议使用此方法定义线程,因为采用继承Thread的方式定义线程后,就不能再继承其他的
2)实现Runnable接口 重写run方法
run函数仅在主线程中运行,而start函数是开辟一个新的线程。
线程具有优先级
线程的方法
静态方法:
Thread.yield() 让出CPU的使用权,给其他线程执行机会,让同优先级的线程先执行
Thread.sleep()/sleep(long millis)
一般方法
thread.join() 使用该方法的线程会在此之间执行完毕后再往下继续执行
object.wait() 拥有当前对象锁的线程进入等待池,必须在synchronized block中调用
object.notify()/notifyAll() 唤醒当前对象等待池中的第一个线程/所有线程
4. 三种关系 is-a has-a use-a
is-a:B类继承自A类,那么B类和A类的关系就是Is-A的关系。
has-a:是关联关系的一种,是整体和部分(通常为一个私有的变量)之间的关系,并且代表的整体对象负责构建和销毁代表部分对象,代表部分的对象不能共享
比如 Man类中有一个类型为Heart类的私有变量
use-a:是类与类(通常为函数的参数)之间的连接,依赖总是单向的
4.如果类中的属性方法没有显示的指明访问权限,则具有包访问权限