List源码仿写知识点总结
1、final修饰的变量是常量,名称用大写
- final修饰的方法可以被重载,不能被重写
2、System.arraycopy(源数组,
从源数组哪一个下标开始copy, 新数组, 从哪一位开始放copy的数据, copy多少位)
-
这个方法可以完成删除数组元素并更新
3、i / Math.pow(2,n); 相当于 i >> n;
同理:i * 2^n^ 相当于 i << n
4、写自定义异常(可以建个专门放异常的包)
-
自定义异常类一般包含两个构造方法:一个是无参的默认构造方法,另一个构造方法以字符串的形式接收一个异常消息,并将该消息传递给父类的构造方法。
-
自定义异常类要继承Exception或RuntimeException或Throwable
5、i++ 和 ++i
int i = 10;
System.out.print(i++ + ++i);
输出结果:22
因为 i++ 是 i = 10,再自增: i = 11;++ i 就是 i = 11 +1 ,再取 i ,i = 12; 10 + 12 =22
6、字面量和字符串对象
字面量存在常量池中,不会变;每次定义的时候内容相同地址就相同;
字符串对象存在堆中,每次new一个就开一个新空间,内容相同地址不同;
7、方法
每个方法只实现一种功能
8、Object类型
Object类型的参数可以传入多种类型的变量:String、int、double等,因为Object是所有类的父类
心得体会
被List支配的一天……感觉今天收获还挺多,虽然日志看起来不多,但每一点都是容易遗忘,需要注意的。这样的学习方式还挺好的,可以看到自己很多知识漏洞。