- 博客(7)
- 收藏
- 关注
原创 使用内置tomcat驱动springmvc,构建IOC容器
实现该类tomcat会调用实现该接口的实现类的onStartup方法,而该方法会把ServletContext传进来,代替传统的web.xml文件配置方式,而springmvc本质就是一个dispatcherServlet。首先先写一个配置类BeanConfig,指定要扫描哪些包,注入到ioc容器里, 而后dispatcherServlet持有ioc容器,进行映射分发Controller, 所以要指明扫描哪些包。在mainApp 调用到自己写的tomcat的run方法,进行监听。maven的依赖如下。
2022-10-22 17:09:59
390
3
原创 TreeSet()加入一个对象为什么会抛出异常
代码如图:会抛出一个异常 因为调用的是无参构造器,当这个对象传入treeSet底层会走treeMap的底层如图所示: *这个分支,而这个分支会向上转型Comparable,因为这个类并没有实现这个类 * 会导致转型抛出异常; * ...
2022-02-12 17:15:26
228
原创 集合List接口的实现类LinkedList的扩容机制
在jdk源码中首先调用无参构造器,由注释构造一个空的列表 *1.先进入无参构造器中去 * public LinkedList() { } * 2.调用add方法前,先进行自动装箱的操作 * public static Integer valueOf(int i) { if (i >= IntegerCache.low && i <= IntegerCache.high) ...
2022-02-09 16:38:26
876
原创 Collection接口的实现类ArrayList的扩容机制
进入源码 /* *1.先进入构造器,DEFAULTCAPACITY_EMPTY_ELEMENTDATA为一个空Object数组,所以初始化为一个空数组 * public ArrayList(){ this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA; } *2.先对其进行自动装箱,返回包装类对象 * public static Integer valueOf(int i) { ...
2022-02-09 15:05:46
348
原创 String类的值为什么不能修改
首先我们应该认识 什么是引用(也就是指向对象的地址),什么是实例对象(也就是值),比如有个Person 类 ,创建一个实例对象 Person p = new Person();而p就是引用,而真正的对象是new Person() 同理String类的值为什么不能修改,打开源码如下图: 我们不难发现有一个属性final char value【】;通过注释我们知道String类是用char类型的value数组来存储的字符串的,正是因为final修饰数组所以Stri...
2022-01-19 16:28:50
1174
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人