Java基础
-
Sting和StringBuffer的区别?StringBuffer常用操作。
append(xx) delete(int,int) insert(int,xx) reverse() length() capacity() -
cpp指针中关于常量和引用的区分、辨析
const char * p -- p是常量,p指针不是
char const * p -- p是常量,p指针不是,与上一条等价
char * const p -- p指针是常量,p不是
const char * const p -- p指针是常量,p也是常量
char &p -- 对p指针进行引用,传参时传的是p指针本身
char &p(报错) -- 非法
这些要能区分开,每个指令的具体意义 -
常见的RuntimException、可查异常、Error
RuntimeException:
- ArithmeticException
- NullPointerException
- IndexOutOfBoundException
- ClassCastException
可查异常: - ClassNotFoundException
- SQLException
- FileNotFoundException
Error: - StackOverflowError
- OutOfMemoryError
- 如何自定义异常?
继承Exception,throw - Class.forName的作用?为什么要用?
通过反射机制把类加载到jvm虚拟机中,一旦类被加载到jvm虚拟机,静态初始化代码就会被执行,在初始化的过程中会执行相关的代码,从而达到加载驱动的目的
LeetCode
- LRU实现(见面试算法leetcode146)
- 序列化和反序列化二叉树(见剑指offer笔记38)
- 判断一个数组是不是二叉搜索树的后续遍历
见(剑指offer笔记20) - 判断一个栈的压入与弹出序列是否成立(见剑指offer笔记19)
- 771宝石与石头 (见面试算法771,注意int与char的转换和记录)
- 数的整数次方 (掌握求指数的递归公式,见剑指offer笔记16)
- 重建二叉树(切分数组可以考虑设置索引,见剑指offer笔记7)
- 链表排序(见剑指offer笔记25,循环实现待补充,链表找中点,快慢指针,链表多指针标记,链表merge操作,循环,递归)
网友评论