![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Gold three silver four
文章平均质量分 70
复习,总结
scanner小霸王
这个作者很懒,什么都没留下…
展开
-
数据结构之队列
队列 队列是一个有序列表,可以用数组或者链表来实现 遵循先入先出的原则,现存人的数据要先取出; 两个变量 font,rear表示前后端 rear=-1,font=-1表示队列中0个元素 思路分析: ii)将尾指针往后移,rear+1,当front == rear【空】 ii)若尾指针rear小于队列的最大下标maxSize-1,则将数据存入rear所指的数组元素中,否则无法存入数据,rear==maxSize-1【队列满】 代码实现: package 数据结构.队列; import java.util.S原创 2021-07-22 08:28:05 · 106 阅读 · 0 评论 -
MySQL
1.count(*)和count(列名)区别 count(*)返回满足条件的记录的行数 count(1):统计满足条件的某列有多少个,会排除null select count(if(comm is null,1,null)) from emp; 查出null的有多少 或者这样写: (总人数-不为空的) select count(*)-count(comm) from emp; 2.分组函数 ...原创 2021-07-20 08:30:18 · 140 阅读 · 0 评论 -
SpringMVC知识总结
1.运行流程 运行流程 1)客户端发送请求 2)来到tomcat服务器 3)springmvc的前端控制器收到所有请求 4)来看请求地址和@RequestMapping标注的哪个匹配,来找到到底使用哪个类的哪个方法 5)前端控制器找到目标处理器和目标方法,直接利用反射执行目标方法 6)方法执行完成以后会有一个返回值,springMvc认为这个返回值就是要去找的页面地址 7)拿到方法返回值以后,用视图解析器进行拼接得到完整的页面地址 8)拿到页面地址,前端控制器转发到页面 @RequestMapping 这个原创 2021-07-18 22:39:42 · 148 阅读 · 1 评论 -
Spring知识总结
1.IOC:反转控制 1)DI:依赖注入 2)IOC在spring容器的实现: a).通过IOC容器读取Bean的实例之前,需要先将IOC容器本身实例化 b)Spring提供了IOC容器的两种实现方式. BeanFactory:IOC容器的基本实现,是Spring内部的基础设施,是面向Spring本身的,不是提供给开发人员使用的。 ApplicationContext:BeanFactory的子接口,提供了更多高级特性。面向Spring的使用者,几乎所有场合都使用ApplicationContext而不是底原创 2021-07-17 20:38:05 · 159 阅读 · 0 评论 -
JDK1.8的一些新特性
1.接口1.8之前方法默认的修饰词是public astract,并且接口里面不能写方法体,但是1.8的可以,并且其实现的子类没有强制写static和default的方法 2.Lambda表达式:简化匿名内部类的调用原创 2021-07-03 15:16:09 · 525 阅读 · 1 评论 -
java之网络
网络通信 网络: ip地址(唯一标识主机): ipv4:4个字节(32位)表示;一个字节的范围是0~255, (0255).(0255).(0255).(0255) ip地址的组成:网络地址+主机地址;比如:192.168.16.69;其中192.168.16是网络地址,69是主机地址; ipv6使用128位表示地址,16个字节,是ipv6的四倍(.......) ipv4的分类: 在开发中0~1024端口尽量不用 域名和端口(监听的一个服务才需要端口): 在 网络通信协议: 网络通信理解: t原创 2021-06-21 15:35:54 · 116 阅读 · 0 评论 -
java之坦克大战
1.初始化坦克的模型: (两个矩形,一个正方形,一个圆形,一条直线) 并且坦克有设计的行为: 核心代码: 2.当击中敌方坦克的时候,敌方坦克消失,并有一个爆炸效果 界面看到的动态效果,其实是不断的重绘界面所展示的,所以先让这个窗口实现Runnable接口,然后当程序启动的时候,隔着一定时间不断的重绘界面 当击中敌军的时候,敌军消失,并产生爆炸效果: 先记录爆炸的位置,然后给爆炸的这个类一个生命周期,不同时间阶段展示不同图片,因为主窗口是不断的重绘,时间间隙不大的情况下,这就展示出了爆炸效果。 使用一原创 2021-06-20 20:48:10 · 676 阅读 · 1 评论 -
java基础之IO流
io学习框架: 文件: 保存数据的地方。 1)常见文件对象的相关构造器和方法: 当进行File file = new File(filePath);只是在内存上有一个文件对象; 只有file.createNewFile();才会在磁盘创建文件 获取文件的相关信息: utf8中,一个汉字是三个字节 2)目录的删除和增加: a)用来删除文件或者文件夹 b)文件夹的创建: Io流的原理: 流的分类: 字节流适用于声音等文件的传输,因为字节流是一个字节一个字节的读取,可以保证无损; 字符流虽然读取原创 2021-06-13 23:06:45 · 4515 阅读 · 19 评论 -
java之泛型
泛型的理解: 泛型示例: 泛型语法:原创 2021-06-08 22:55:25 · 125 阅读 · 0 评论 -
java之集合
1.集合的体系图 2.数组vs集合 a)数组: b)集合 3集合的继承图(主要的一些类) 集合主要两种:单列集合(对象)、双列集合(键值对) a)collection b)Map 4.collection接口实现类的接口 a) b)collection的子类都可以使用Iterator迭代器 ii)迭代器原理: 可重复; ii)增强for循环 5.List接口 6.arrayList a)可以放任何值,可以加入null,并且多个 b)底层是由数组实现 c)arrayList等同vecto原创 2021-06-07 23:26:50 · 298 阅读 · 4 评论 -
java后端技术体系
(本文是截取韩老师的学习文档,旨在明确一下知识体系) 1.java基础部分 2.java高级 3.javaweb 4.主流框架 5.分布式 微服务原创 2021-05-16 23:09:11 · 195 阅读 · 0 评论 -
java之包装类,String类以及常见的一些类
1.8种 包装类型(wrapper) a)拆箱与装箱(练习题) 此处输出是1.0而不是1的原因,因为double的优先级别较高,三元运算符是一个整体,所以integer要提升精度 ii) 当直接new Integer()是两个不同的对象; 当Integer m定义的时候,底层是Integer.valueOf()这个方法,当值在-128~127之间的时候,直接返回值;当不在这个范围的时候,会new Integer(“值”),就变成了一个对象 ii) 只要存在数据类型,比较的就是值是否相等 2.Stri原创 2021-05-16 21:08:21 · 113 阅读 · 1 评论 -
java之异常处理
1.异常处理机制的价值: 出现异常,程序还能继续执行 2异常的分类:error 和exception(编译和运行时异常(可不处理)) 3异常体系图 4异常处理的两种方式 a)try-catch-finally(程序员代码捕获) 处理机制图: b)throws将发生的异常抛出,交给调用者来处理,最顶级的处理者就是jVM throws处理机制图: JVM:打印错误信息,退出程序 如果程序员,没有显示是处理异常,默认是throws 5.try-catch-finally具体分析 a)可以有多个catch语原创 2021-05-16 00:35:56 · 190 阅读 · 0 评论 -
面向对象之抽象类、内部类
1.抽象类(抽象类的本质还是类) 2抽象类和接口的区别 a)两者都不能直接实例化,对于抽象类:如果抽象类要实例化,那么抽象类定义的变量必须指向一个子类对象,子类需要继承抽象类的所有抽象方法;对于接口,定义的变量要指向一个子类对象,这个子类必须实现了这个接口所有的方法。 b)接口只能方法声明,抽象类可以方法的声明或者实现。 c)抽象类需要被子类继承,接口需要被子类实现 d)抽象类所有抽象方法都需要被实现,如果不能全部实现,子类也需要是抽象类; e)抽象类里面可以没有抽象方法 f)类中有抽象方法,那么这个类一原创 2021-05-15 23:15:28 · 269 阅读 · 1 评论 -
类变量和类方法相关知识
1.类变量(静态变量) a)类变量内存布局 ii)类变量存放在堆空间(jdk8以后),方法区(jdk8以前) ii)静态变量被对象(指的是同一个类的所有对象)共享 ii)类变量在类加载的时候就生成 ii)类变量是类加载时候就创建了,所以我们没有创建对象实例,也可以通过雷鸣,类变量名来访问 ii)生命周期随着类的加载而加载,随着类的消亡而消亡 b)语法 2类方法 a)静态方法只能访问静态属性或者静态方法;但可以通过创建一个对象,访问对象里面的方法; b)类方法不允许使用和对象有关的关键字,如:this、s原创 2021-05-15 18:06:16 · 439 阅读 · 0 评论 -
java一些简单常见方法分析
==和equals的对比 a) == 例如:A,B两个类为父子关系 B b = new B() A a = b; 判断a == b的结果; true,因为指向的内存空间是相等的,或者说地址相等 b)equals 只能判断引用类型(判断地址) 2.hashcode a)不同对象的哈希值是不一样的 b)hashcode不是对象地址,而是根据地址转化而成的代码 3toString() 默认返回 :全类名+@+哈希值的十六进制 4.finalize()垃圾回收器 当没有任何引用指向对象时候,这个对象将成为垃圾.原创 2021-05-15 16:21:31 · 109 阅读 · 0 评论 -
面向对象三个基本特征:重载、继承、多态
1.重载:同个类中:方法同名,形参列表不一致 a)方法名一样 b)(参数类型或个数或顺序,至少有一个不同,参数名无要求) c)返回类型不要求 2.可变参数 a)例子:求和 方法定义: 方法调用: b)注意: 1)普通参数与可变参数一起使用时候,可变参数只能放在最后面 2)可变参数,一个方法只能有一个 3作用域: a)全局变量可以不赋值,直接使用,因为有默认值; 局部变量必须赋值后才能使用,因为没有默认值; b)局部变量和全局变量可以重名,遵守就近原则 c)(全局变量)属性可以加修饰符(public,pro原创 2021-05-09 23:42:45 · 1576 阅读 · 1 评论 -
java之递归
1.分析一段递归代码,了解递归调用流程 a)当主方法调用test(4)时候,将会进行“套娃”,每个调用方法都会在栈独立开辟一个空间 b)当n =2的时候,不再“套娃”,所以先输出n=2 c)test(2)调用结束,返回test(3),输出n=3,依次反复直到调用层test(4)执行完成 2.递归常见的类型 a):斐波那契数列 b)猴子吃桃 c)老鼠出迷宫(红色为障碍物1,通道为0) 思路: ii)先设置障碍物和通道 ii)核心方法代码分析 第一步:当走到坐标为6,5表示找到出口 第二步:就是还没找到出口,原创 2021-05-09 15:37:44 · 431 阅读 · 1 评论 -
java之类与对象
1.当使用现有的技术定义一个事物时候: a)现有技术: ii)单独定义多个变量(定义多个事物时候,变量定义过分) ii)使用数组解决(目标不明确) 缺点:不利于数据管理,效率低 2,类:(属性+行为)构成; 而对象是类的具体的一个实例,类和对象的关系是一对多的关系 3.对象内存布局 以Cat cat = new Cat();为例子 cat的引用放在栈中,对象在堆中开辟一个空间, 因为name是String类型,是一个引用类型,会把相对应的数据放在常量池中,而age是基本数据类型直接放在堆中。 除此之外,ca原创 2021-05-09 10:28:49 · 168 阅读 · 0 评论 -
Spring 框架jdbcTemplate和事务部分的知识
1.jdbcTemplate的概念 a)spring框架对jdbc进行封装,能方便实现对数据库操作 2.jdbcTemplate准备工作 a)引入相关jar包 b)spring配置文件配置数据库连接池 c)创建JdbcTemplate对象,注入DataSource d)创建service,dao类,在dao注入JdbcTemplate对象 开启组件扫描 3JdbcTemplate进行操作数据库 a)创建实体 b)编写service和dao ii)dao书写方式1 ii)dao书写方式2 c)原创 2021-05-05 21:11:10 · 236 阅读 · 0 评论 -
Spring 框架Aop部分的知识
1.AOP概念 面向切面编程,利用aop可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分直接的偶合度降低;提高程序的可用性,同时提高了开发的效率。 例如:登录功能需要再加上权限为例子,aop不需要修改源码 2.AOP(底层原理) aop底层使用动态代理 a)有两种情况 第一种:有接口,使用JDK动态代理 ii)动态代理Proxy 调用newProxyInstance方法,方法有三个参数: 类加载器;增强方法所在的类,这个类实现的接口,支持多个接口;实现这个接口InvocationHandler,原创 2021-05-05 17:50:47 · 230 阅读 · 1 评论 -
Spring框架IOC部分的知识
1.Spring 是轻量级的开源的javaEE框架 (轻量:所谓轻量级就是spring框架在系统初始化的时候不用加载所有的服务,为系统节约了资源! 而EJB框架就是重量级的,每次初始化都必须加载所有的服务!) 作用:解决企业应用开发的复杂性 主要两个核心:IOC 和 AOP 1)IOC :控制反转,把创建对象的过程交给spring进行 (以前是直接new) 2)Aop:面向切面,不修改源代码进行功能的增强 (以前扩展需要修改源代码) 2.Spinng特点 1)方便解耦,简化开发 2)Aop编程支持 3)方便原创 2021-05-05 00:55:34 · 149 阅读 · 0 评论 -
Spring知识补充
1.Spring主要两大部分IOC、AOP 2.spingz的流程: 3.实例化vs初始化 实例化:在堆中开辟一块空间,属性都是默认值 初始化:给属性完成赋值操作。 (a.赋值操作,b.调用具体的初始化方法) 4.反射的三种方式 ...原创 2021-05-04 21:06:08 · 101 阅读 · 0 评论 -
JVM的一些知识
1.什么是垃圾garbage? 没有任何引用指向的对象就是垃圾 2.判断哪些对象需要被回收? 1)引用计数法: 给对象添加一引用计数器,被引用一次计数器值就加一,当引用失效的时候,计数器值就减去1;当计数器为0时候,对象就是不可能再被使用的; 简单高效,但是无法解决对象之间相互循环引用的问题。 2)可达性分析算法 通过一系列的称为“GC’ Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链,当一个对象到GC Roots没有任何引用链相连的时候,则证明改对象是不可用的,此算法解决原创 2021-05-03 21:29:16 · 202 阅读 · 0 评论