# 1 java语言 ## 1.1 java重写和重载 **重写:** 1.发生在父类与子类之间 2.方法名,参数列表,返回类型(除过子类中方法的返回类型是父类中返回类型的子类)必须相同 3.访问修饰符的限制一定要大于被重写方法的访问修饰符(public>protected>default>private) 4.重写方法一定不能抛出新的检查异常或者比被重写方法申明更加宽泛的检查型异常 **重载:** 1.重载Overload是一个类中多态性的一种表现 2.重载要求同名方法的参数列表不同(参数类型,参数个数甚至是参数顺序) 3.重载的时候,返回值类型可以相同也可以不相同。无法以返回型别作为重载函数的区分标准 ## 1.2 java反射 Java的反射机制是在运行状态中,对于任意一个类,都能够获得这个类的所有属性和方法;对于任意一个对象,都能够调用它的任何方法和属性。这种动态获取类的信息以及动态调用方法的功能称为Java语言的反射(reflection)机制。 可以获取类Class, 属性Field,方法Method 优点:增加程序灵活性,降低耦合度,指定类名、方法名来实现方法调用,非常适合实现业务的灵活配置。 缺点:反射会导致程序效率降低, 不容易维护, 破坏类的封装性 应用场景: 1. 通过配置文件,直接Classforname根据需求创建类 2. 按需加载jar包或class ## 1.3 String,StringBuilder, StringBuffer String是一个final修饰的类,内部采用char[] byte[]存储也是个final的类,final修饰的类不能被集成。 不可变不意味着不能修改,如果将abc改成bcd,那么会重新申请新的内存空间进行存储,地址也发生变化。String由于不可变,因此来说是线程安全的 StringBilder和StringBuffer的区别 1.线程安全: StringBuilder和StringBuffer同时继承了AbstractString类,StringBuffer类中的方法都添加了synchronized关键字,也就是给这个方法添加了一个锁,用来保证线程安全。 2.性能:由于StingBuffer需要加锁,因此性能要低于StringBuilder, StringBuilder适合单线程的场景下使用 StringBuffer的扩容机制 1. 一开始有个初始容量,根据构造方法的不同初始化有相应的区别 2. 使用append()方法在字符串后面追加值的时候,如果长度超过了该字符串存储空间大小了就就会先进性扩容。构建新的并且存储空间更大的字符串,将旧的复制过去。 3. 扩容的时候原始容量 * 2 + 2 ## 1.4 HashMap hashmap在jdk1.8之前采用数组+链表的方式存储,在jdk1.8之后采用数组+链表+红黑树的存储方式。 **hashmap扩容** hashmap初始化的时候大小是16,每次增加元素之后吗,根据设定的装填因子(默认0.75)进行,判断是否需要进行扩容操作。 扩容时,需要新建一个长度为之前数组2倍的新的数组,然后将当前的Entry数组中的元素全部传输过去,扩容后的新数组长度为之前的2倍,所以扩容相对来说是个耗资源的操作。 将老数组中的数据逐个链表地遍历,扔到新的扩容后的数组中,我们的数组索引位置的计算是通过 对key值的hashcode进行hash扰乱运算后,再通过和 length-1进行位运算得到最终数组索引位置。 **get过程** 1. 根据key进行hash运算,将结果hash&(length - 1)得到存储的位置 2. 如果存储的位置的key和我们要找的key是相同的,那么直接返回结果 3. 如果是一个treenode则按照红黑树进行查找,如果不是红黑树那按照链表next进行查找 **put过程** 1. 如果 hashmap扩容 ## 1.4 Strin 最后编辑:2024年04月23日 ©著作权归作者所有 赞 0 分享
《史上最糟糕的室友第一季》记录片高清在线免费观看:https://www.jgz518.com/xingkong/167793.html
哈哈哈,写的太好了https://www.lawjida.com/
作者的布局谋篇匠心独运,让读者在阅读中享受到了思维的乐趣。
新盘首开 新盘首开 征召客户!!!
华纳个人账户开户流程?(▲18288362750?《?微信STS5099? 】【╃q 2704132802╃】
华纳东方明珠客服电话是多少?(▲18288362750?《?微信STS5099? 】
如何联系华纳东方明珠客服?(▲18288362750?《?微信STS5099? 】
华纳东方明珠官方客服联系方式?(▲18288362750?《?微信STS5099?
华纳东方明珠客服热线?(▲18288362750?《?微信STS5099?
华纳东方明珠24小时客服电话?(▲18288362750?《?微信STS5099? 】
华纳东方明珠官方客服在线咨询?(▲18288362750?《?微信STS5099?
新盛开户前客服电话咨询材料清单【1558--7291-507薇同1】
新盛开户官方客服电话 【1558--7291-507 薇同1】
新盛开户业务办理电话 【1558--7291-507 薇同1】
新盛开户联系电话大全 【1558--7291-507 薇同1】
华纳圣淘沙开户步骤详解(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户流程全解析(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司账户注册指南(183-8890-9465—?薇-STS5099【6011643】
新手如何开通华纳圣淘沙公司账户(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙企业开户标准流程(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户:从零到一(183-8890-9465—?薇-STS5099【6011643】
官方指南:华纳圣淘沙公司开户流程(183-8890-9465—?薇-STS5099【6011643】
华纳圣淘沙公司开户流程说明书(183-8890-9465—?薇-STS5099【6011643】
寻找华纳圣淘沙公司开户代理(183-8890-9465薇-STS5099】
华纳圣淘沙官方合作开户渠道(183-8890-9465薇-STS5099】
华纳圣淘沙公司开户代理服务(183-8890-9465薇-STS5099】
华纳圣淘沙公司开户咨询热线(183-8890-9465薇-STS5099】
联系客服了解华纳圣淘沙开户
(183-8890-9465薇-STS5099】
华纳圣淘沙公司开户专属顾问
(183-8890-9465薇-STS5099】
《华纳圣淘沙公司开户流程全解析》→ 官方顾问一对一指导??? 安全联系:183第三段8890第四段9465
《华纳圣淘沙开户步骤详解》→ 」专属通道快速办理??? 安全联系:183第三段8890第四段9465
《华纳圣淘沙账户注册指南》→ 扫码获取完整资料清单?「微?? 安全联系:183第三段8890第四段9465
《新手开通华纳圣淘沙公司账户指南》→ 限时免费咨询开放??? 安全联系:183第三段8890第四段9465
《华纳圣淘沙企业开户标准流程》→ 资深顾问实时解答疑问??? 安全联系:183第三段8890第四段9465
《华纳圣淘沙开户步骤全景图》→ 点击获取极速开户方案??? 安全联系:183第三段8890第四段9465
《华纳圣淘沙账户创建全流程手册》→ 预约顾问免排队服务?9?? 安全联系:183第三段8890第四段9465 《从零开通华纳圣淘沙公司账户》→ 添加客服领取开户工具包?? 安全联系:183第三段8890第四段9465
《官方授权:华纳圣淘沙开户流程》→ 认证顾问全程代办?」?? 安全联系:183第三段8890第四段9465
《华纳圣淘沙开户说明书》→立即联系获取电子版文件??? 安全联系:183第三段8890第四段9465
外围快餐可以过夜吗a0cz.cn