快手 java开发 实习
自我介绍
项目:问了项目中遇到的困难和解决方案
1.java中的异常(Throwbale下分为exception和error,具体有IO/空指针/内存溢出)
2.java中的字符串拼接是直接在修改某个字符串吗,如果不是为什么(不是,string是不可变类型,需要new一个新字符串)
3.stringBuffer如何拼接的,如何扩容的(我说直接在原来上面拼接,扩容是*2,然后问我如果拼接字符串很长*2还够吗,为什么*2)
4.stringBuffer和StringBuilder有啥区别(stringBuffer是线程安全的,StringBuilder是线程不安全的但更快)
5.stringBuffer如何保证线程安全(sychronized)
6.sychronized可以修饰什么,有什么区别(方法和代码块,锁对象&锁类)
算法题:链表反转
感觉问的还算简单,但自己有点紧张,阿巴阿巴,