31、类中可定义接口
一个定义接口的java文件中最多有1个Public的接口
32、TreeMap 按照键值升序排序
LinkedHashMap 按照插入顺序排序
Map的操作:
Map<int,int> map=new HashMap<int,int>(); map.put(1,2); map.get(1); map.remove(1); map.clear();
33、继承Iterable接口可以声明这个类是可以迭代的。
34、内部类
匿名内部类是继承某一接口的。
静态内部类不能访问外部非static成员或方法。
局部内部类和匿名内部类只能访问该方法体中的final或effctively final变量。
局部内部类不能有权限修饰符或者static。
35、静态内部类中的非静态成员变量并不静态。
36、非静态内部类不能创建静态方法或变量。
37、Thread.sleep使程序阻塞,不考虑优先级
Thread.yield使程序进入runnable状态,只会考虑优先级大于等于的线程
thread.join 阻塞调用此方法的线程,等待thread线程结束或一段时间后再运行该线程
38、IO输入流的继承关系
参考链接:https://blog.csdn.net/pkx1993/article/details/80991812
https://www.cnblogs.com/tomasman/p/6867044.html
39、FileInputStream.read
read()一次读一个,到末尾返回-1
read(byte[])读入byte[]大小数量的字节,若未满,返回真实字节个数,到末尾返回-1
read(byte[],int off,int len)一次读入len个,第一次存储在byte[off]里,接着往后存
40、若JAVA文件中只有一个类,则文件名必须和类名保持一致
若有多个类,只能有1个Public类,文件名和Public保持一致
无public,则可与任意一个class保持一致。
41、基类向上转型会产生运行时错误
42、x.getClass()方法不受多态影响
43、System在lang包中
44、URL格式:协议名+主机名+端口号(范围)+文件名