基础剖析
文章平均质量分 85
主要参考Java编程逻辑,深入学习Java API。回顾基础
ShaoZG_金刚钻
这个作者很懒,什么都没留下…
展开
-
列表和队列
文章目录ArrayList基本实现迭代ForEach迭代的本质迭代器接口迭代器的优势ArrayList实现的其他接口ArrayList的特点LinkedListArrayList基本实现ArrayList是一个泛型容器,可以理解为动态数组。主要方法有添加元素、查询元素下标、通过下标查询元素、移除元素等。其实现类似于StringBuilder,也是以一个数组存储元素,只不过这个数组并不是特定类型的元素,而是Object[]。类似StringBuilder,ArrayList也有一个默认数组长度为10原创 2021-03-15 23:49:49 · 551 阅读 · 0 评论 -
泛型
泛型即广泛的类型,是类型参数化,处理的数据类型是不固定的,作为参数传入。基本原理:Java编译器将泛型代码转换为普通的非泛型代码——将类型参数T、K擦除,替换为Object;并且插入必要的强制类型转换。Java虚拟机实际执行时,对泛型是不感知的。泛型主要体现在开发环境和编译阶段,能使代码具有更好的安全性和可读性。(泛型替换Object和强制类型转换)public class Node<T, K> { //泛型放在类名后 private T element; private原创 2021-03-11 01:15:37 · 93 阅读 · 0 评论 -
随机-Random
目录认识随机Random随机举例简单随机密码洗牌认识随机// Test1for(int i = 0; i < 5; i++) { System.out.println(Math.random());}结果:0.459043689558392250.116668967738641220.74655485430625580.075554136929575690.13414951911779593Math.random方法如下,类似静态内部类实现单例的形式,在Math中定义了单原创 2021-03-09 02:24:33 · 135 阅读 · 0 评论 -
包装类与String
目录包装类以Integer为例剖析包装类Integer中的二进制运算位翻转循环移位包装类包装类基本类说明BytebyteShortshortIntegerintint i = 125; Integer intObj = Integer.valueOf(i); int i2 = intObj.intValue();LonglongFloatfloatDoubledoubleBooleanbooleanChara原创 2021-03-05 22:49:45 · 116 阅读 · 1 评论 -
异常Throwable
这里写目录标题认识异常异常类体系异常处理异常使用认识异常异常是相对于return(正常退出)的一种退出机制。当JVM发现一些非正常情况时,无法继续执行了,启用异常处理机制:先创建一个异常对象并抛出(throw),然后查找看谁能处理这个异常;会从当前函数开始查看谁捕获了该异常,当前函数没有就查看上一层函数,直到主函数。如果异常没有被捕获会使用默认处理机制:输出异常栈信息并退出。没有异常机制时,程序员通过函数返回值判断是否异常,return是推出的唯一机制。正常逻辑和异常逻辑混杂在一起,难以理解和维护。原创 2021-03-05 01:03:25 · 129 阅读 · 1 评论 -
类的继承与对象创建过程
文章目录继承基本概念根父类Object继承的细节对象创建过程继承基本概念根父类ObjectJava中,没有声明父类,也会有一个隐含的父类Object。它是所有类的父类。提供了基础的方法:获取对象的类型getClass、对象哈希值hashCode、equals、clone、toString;notify、notifyAll和wait方法与synchronized配合使用,用于加锁之后的信号量等待和通知发送;finalize与GC相关,当垃圾收集器将其对象标记为可回收时,会调用,可以重写该方法实现特原创 2021-03-03 03:41:47 · 373 阅读 · 0 评论 -
设计原则
开闭原则、里氏替换原则、依赖倒置原则、单一职责原则、接口隔离原则、迪米特法则——最少知识原则、合成复用原则原创 2021-03-03 01:43:48 · 59 阅读 · 0 评论