新建状态(New):新创建了一个线程对象
就绪状态(Runnable):线程对象创建后,其他线程调用了该线程的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权
运行状态(Running):就绪状态的线程获取了CPU,执行程序代码
阻塞状态(Blocked):线程因为某种原因比如sleep()、wait()方法失去所占用CPU资源,暂时停止运行。在睡眠时间到或者获得设备资源时,可以重新进入就绪状态;
阻塞有三种情况:
死亡状态(Dead):线程执行完了或者因为异常退出run()方法
相同:
不同点:
抽象类单继承,接口多实现
抽象类中可以有方法的实现,而接口中只能有方法的定义不能实现(public abstract)
接口中的方法包含抽象方法(JDK 7及以前),默认方法和静态方法(JDK 8),私有方法(JDK 9)
默认方法 (default修饰且不可省略),供子类调用或重写:public default void fun(){}
静态方法,供接口直接调用(接口名.静态方法名),实现类无法调用: public static void fun(){}
私有方法 private,供接口中的默认方法或者静态方法调用
抽象类 extends 接口 implements
接口中成员变量都是public static final,必须初始化,抽象类可以有抽象方法和具体方法
抽象类可以有构造方法,供子类实例化使用,接口没有
修饰类,表示类不可被继承
修饰方法,表示方法不可被继承类修改
修饰变量,表示变量不可被修改
用StringBuffer\StringBuider的reverse方法
用String类的toCharArray()转化成字符数组
用String类的charAt()
补充
常用的String类方法 length(),subString(),toCharArray(),charAt(),split(),equals(),concat(),contains(),indexOf(),toString(),replace(),toUpperCase()
TCP/IT协议:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。
HTTP协议:
GET:
POST:
PUT:
DELETE:
GET传输的数据量小,不能大于2kb