1、inputstream中支持mark的只有ByteArrayInputStream和BufferedInputStream
2、nio中服务器端用SocketServerChannel.open来创建channel,用Selector.open来创建selector
3、获取整数有多少位为1,用Integer.bitCount(i)
4、>>>位操作是无符号右移,高位总是填0,而>>是有符号右移,高位填充总是与原来的高位一致。
5、有4种引用StrongReference,SoftReference,WeakReference, PhantomReference,强引用,垃圾回收器不会回收被引用;软引用 ,在内存不足时,会回收 ;弱引用 ,回收器工作时,不管内存是否足不足,都会回收;虚引用不能获得实例对象,只是在回收时会收到系统通知。
6、在用StreamTokenizer来处理输入,来判断哪些作数字,哪些作字符串时,需要先resetSyntax,再用wordChars或者whiteSpaceChars来设置字符串和空格。如果直接用wordChars当中用的是位或操作,原来当什么类型,仍然当什么类型。在使用StreamTokenizer,建议使用字符流的io
6、用基本数据类型的包装类型作为函数参数时,在函数内部修改值只在函数内有效
7、vm中选项-XX:+UseSerialGC用的是Serial收集器
8、创建客户端socket时,其实内部通过工厂模式和桥接模式创建socket的实现类,并且发起向服务器端的连接
9、线程的interrupt方法只是设置中断标志,如果在设置了中断标志后,调用wait或者其它方法后处理阻塞状态,就会清除中断标志,并且导致中断异常