每日学习记录整理
每天的学习记录打卡
于小袁
这个作者很懒,什么都没留下…
展开
-
SpringBoot集成AOP
一:首先导入依赖,集成SpringBoot只需要导入这一个依赖就够了<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId></dependency>二:创建一个类,将这个类变为切面@Aspect 将该类变为一个切面@Component --将该原创 2021-04-30 16:42:14 · 642 阅读 · 1 评论 -
匿名内部类的final访问
老哥写的不错https://cuipengfei.me/blog/2013/06/22/why-does-it-have-to-be-final/如果还想了解:可以了解一下闭包概念,和其他语言编译之后匿名内部类的反编译,有对比很好懂总结:其实就是为了防止一个变量在内部类访问,和外部类进行修改,导致数据不一致的问题...原创 2021-02-24 14:56:50 · 112 阅读 · 0 评论 -
RedisTemplate和StringRedisTemplate
RedisTemplate和StringRedisTemplate首先说一下估计和我遇到了同样的问题了首先说一下估计和我遇到了同样的问题了接手别的代码,发现别人的Redis和我的Redis不太一样 emmmm当RedisTemplate 存入一个key和内容的时候,JdkSerializationRedisSerializer 进行序列化的这种方式,是将存入的东西转为字节数组,此时你打看查看数据是以不可读取的状态呈现的,并且如果你使用这个,不带序列fistjson 那么你也没办法使用可视化工具打开原创 2021-02-08 14:24:01 · 184 阅读 · 0 评论 -
软件设计和编码-随笔
开发环境-目前idea jdk部署项目:把我们写好的java代码开放,部署到服务器上,然后我们可以通过浏览器访问 (环境要一致)独立ip软件的生命周期:立项到停用的过程1:问题的定义和规划:开发方和需求方讨论目标和可行性2:需求分析:在确定软件开发可行之后,对软件需要实现的各功能进行可行性需求的分析3:软件设计:根据需求文档,把整个软件划分为模块,选择数据库框架以及各种技术,总体设计,详细设计4:程序编码:将软件转换为计算机可运行的程序代码.要有 可读性 易维护性 提高程序与逆行效率5:测试原创 2020-09-03 20:25:19 · 1018 阅读 · 0 评论 -
XML语法特点
XML(一种文件的格式)可扩展的标记语言1:作用:可以交换数据(是一种通用的数据交换的格式) 配置文件 等2:XML语法只要在第一行打上<?xml version="1,0" encoding="utf-8" standalone="yes"?> 就可以了yes表示,不包含其他文档 no为包含其他文档,no可以不;< >表示XML文档中元素(Element)version 就是版本的意思 有只有一个版本encoding 就是输入的编码格式3:XML的书写要求(1)原创 2020-09-03 20:24:28 · 389 阅读 · 1 评论 -
JAVA中File和IO
File(文件夹/目录)作用:操作文件本身,如名字遍历删除,如果需要操作文件中的内容,我们必须使用Io来完成window一般用\分割文件 然后 但是java中用//这个或者\操作File常见方法:String getName():获取文件名称String getPath():获取文件路径String getAbsolutePath():获取绝对路径相对路径和绝对路径:假如一个学生是我们班级的,我们只需要说他的名字就好,但是要是其他班级的就需要说明,是哪个班级的谁谁谁File原创 2020-08-30 20:02:28 · 226 阅读 · 0 评论 -
JAVA数据结构集合框架泛型
我们在接收新的技术的时候怎么接受他的好 ?1:性能方面 改变比较大2:使用方面比较简单(如果新的性能高十分麻烦也会用新的数据)此时我们来恶心一下自己,来改一下数组实现和容器差不多的功能有多麻烦,然后我们在来接触集合,那么我们首先来模拟一下ArrayList的底层操作模拟ArrayList作用:计算机存储组织数据的方式,然后就是模拟数据进行增删改查模拟ArrayList的增删改查先初始化数组一下 然后对集合数组进行增删改查操作public class PlayerList{ //存储原创 2020-08-27 20:49:05 · 350 阅读 · 0 评论 -
JAVA多线程超多细节
多线程作用:1:发挥多核CPU的优势(充分利用cpu资源)如果是单线程的程序,那么在双核CPU上就浪费了50%,在4核CPU上就浪费了75%。单核CPU上所谓的”多线程”那是假的多线程,同一时间处理器只会处理一段逻辑,只不过线程之间切换得比较快,看着像多个线程”同时”运行罢了。多核CPU上的多线程才是真正的多线程,它能让你的多段逻辑同时工作,多线程,可以真正发挥出多核CPU的优势来,达到充分利用CPU的目的。多线程完成cpu内核的快速切换,提高CPU的利用率2:防止阻塞假如单线程执行的时候在返回数原创 2020-08-24 17:39:15 · 290 阅读 · 0 评论 -
JAVA异常的处理方法和体系
异常的体系他们之间的继承体系Throwable//抛出 能力-> Exception(编译)->Runnable(运行) //运行中出现逻辑问题可以处理->Error //虚拟机出现了问题我们需要处理的异常只有Exception和Runnable其他的异常(虚拟机异常)我们处理不了也不能处理如果程序中出现了异常或者可能出现的我们不处理,那么当异常出现的时候此时程序将不会继续运行,如果处理就可以继续运行了处理异常的方法当异常出现的时候我们有两种方法处理他1:try()ca原创 2020-08-22 16:36:54 · 389 阅读 · 0 评论 -
JAVA随机数-日期-正则
StringBurilder作用:可改变的字符串 AbstractStringBuider里面的char数组没有用final修饰String str1 = "积累"; String str2 = "务实"; //的到一个新的字符串 每次拼接都会得到一个新的字符串(对象) 占用内存空间 //如果再循环中拼接字符串 会产生大量的对象对内存的消耗十分的大 //在循环中完成字符串拼接不要使用String String st原创 2020-08-19 21:43:27 · 436 阅读 · 0 评论 -
JAVA-this-super关键字-static修饰符-final和代码块内部类和枚举
今日学习和总结1:this关键字详解作用:1:在构造器中this关键字有指向成员变量2:在方法中this关键字指向方法调用者3:在当前类中调用其他非static修饰的方法1:在构造器中指向当前类成员变量public class Animal{ private String name; private int age; //演示一下构造器互调 public Animal(){ this("name",128);//此时就代表找个构造器已经初始化了名字找个成员变量但是必须和本类其他构原创 2020-08-15 17:18:23 · 364 阅读 · 0 评论 -
JAVA接口JAVA多态JAVA引用类型的转换
接口1:接口作用:接口的作用就是把使用接口的人和实现接口的人分开,实现接口的人不必要关心谁去使用,而使用接口的人也不用关心实现的细节2:接口是什么:是多个抽象方法的集合3:接口体现了:体现了规范和实现相分离的思想以及低耦合(关联性很低)定义语法public interface 接口名{ //抽象方法1(); //抽象方法2(); //抽象方法3();//接口中的方法都是公共的抽象方法等价于抽象方法1(); == public abstract void 方法名();}类只可以单继承原创 2020-08-12 20:48:45 · 331 阅读 · 0 评论 -
JAVA数组拷贝JAVA冒泡排序JAVA二分法
数组拷贝原理分析:1:要知道有几个形式参数 返回值可以有也可以没有看情况 形式参数需要知道 从哪个数组的哪个索引 (2个值)拷贝到哪个数组哪个索引(2个值) 拷贝多少个元素(1个值) 加起来一共需要5个值2:怎么拷贝 :将数组索引元素 赋值给新数组索引元素 同时 原数组索引移动一位 新数组索引也就引动一位赋值 一共需要赋值多少长度就写多少,遍历的时候就遍历多少次public int[] arrayCopy(int[] src,int srcPos,int[] dest ,int dest Po原创 2020-08-11 17:36:05 · 248 阅读 · 0 评论 -
JAVA this关键字和JAVA构造器setter的选用以及JAVA的继承思想和方法覆盖JAVA的抽象方法和抽象类以及Object类的常用方法
this关键字的使用作用:其实就是访问当前类的成员变量 还有就是调用当前类的构造器this的第一个用法public class Cat(){ private String name; private int age; //此时定义有参数和无参数构造器 public Cat(){} public Cat(String name,int age){ this.name = name; this.age = age; }}此时直接上个图分析一下this的作用 this就是直接指向原创 2020-08-09 22:31:36 · 192 阅读 · 0 评论 -
JAVA面向对象的概述,JAVA成员变量和局部变量,Java类的定义,以及JAVA的封装思想和访问修饰符一
2020/8/7面向对象作用:面向对象的思想就是讲一件事情执行某个人去做,.就像把一个功能封在某个方法里面抽象和实例 抽象就是类 实例就是创建类的对象 publ成员变量和局部变量成员变量: 在类中,在方法外面,整个类中都可以使用的放啊 作用域 在整个类中一直都可以 内存分析: 存在于堆中,随着对象的销毁而销毁局部变量: 在方法中,在形式参数中,在一个代码块内 作用域:花括号的开始到结束 内存分析:在栈中,随着所定义的调用的方法销毁类作用:Class类可以帮助我们在程序运行原创 2020-08-07 21:41:53 · 220 阅读 · 0 评论 -
JAVA方法的定义,JAVA方法操作以及JAVA方法注意事项
预习和总结方法作用:在类中定义方法的语法 完成某一特定功能(如:求和,统计数量等)的**代码块方法的定义:语法格式[修饰符] 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2....){ 方法体; [return 返回值;] //如果返回值类型为void 则不用 return}//格式分析1:修饰符: private 缺省 protected public2:返回值类型: 可以是基本数据类型也可以数引用数据类型3:方法名称:和标识符一样4:形式参数: 可以有多个 然后可以原创 2020-08-04 20:13:04 · 349 阅读 · 0 评论 -
JVM内存模型,JAVA数组,JAVA二维数组的讲解
今日预习总结数组JVM内存模型1方法区 主方法存在的地方存储被JVM加载后的,类信息.常量.静态变量即时编译后的数据信息2;java虚拟机栈 每当局部变量被创建的时候创建一个栈帧用于存储该方法的局部变量,操作栈,动态链接,方法出口等3:java堆:当有对象创建的时候就在堆上开辟一块存储空间GC垃圾回收器 就是当局部变量的调用方法结束 或者成员变量的对象销毁 那么此时gc就自动运行了数组定义作用: 把相同类型的多个常量值有序的组织起来的一种数据形式 数组索引从0开始的语法: 数组元素类型原创 2020-08-03 00:26:54 · 444 阅读 · 0 评论 -
JAVA选择语句和循环语句的讲解
今日预习总结 选择语句和循环语句顺序结构作用:控制代码从上而写一行一行的执行选择结构作用:根据不同的逻辑选择不同的代码进行执行 ( if语句 和 swith语句)//if语法 语义:如果...那么...if(boolean表达式){ 语句体;}//if-else语法 语义: 如果...那么....否则if(boolean表达式){ 语句体;}else { 语句体2;}//if-else if - else语法 语义:如果..那么..如果..那么..否则if(原创 2020-08-01 22:33:49 · 323 阅读 · 0 评论 -
JAVA变量和JAVA基本数据类型转换JAVA运算符的讲解
今日预习和总结变量的定义和使用作用:开辟一块内存空间后可以,往该区域存储数据,修改数据,也可以获取数据特点:----1;占据一块空间----2;该区域又自己的名称(变量名)和类型(数据类型)----3;可以重复利用----4’该区域可以在同一个种类型范围变化语法方式一:先定义后赋值 数据类型 变量名 int age; 变量名 常量值 age = 17;方式二:在声明的同时赋值 数据类型 变量名 = 初始化值: int age = 17;变量的总结:--原创 2020-07-31 21:55:54 · 481 阅读 · 0 评论 -
JAVA语法,JAVA关键字保留字,JAVA分割字符以及数据类型
下面展示一些 内联代码片。遇到的问题和我的一些总结:1:不能用非静态的方法访问静态的成员变量,也不能用静态的方法去访问非静态的成员变量今天学习的内容java的编译和运行java源文件编译之后,编译为字节码文件,之后通过虚拟机运行文件 虚拟机是不跨平台的但是字节码文件时跨平台的java的基本语法1:大小写严格区分2:一个类中只能有一个public修饰的类 且这个类名字必须和文件名相同3:每个java文件编译后都会有一个字节码文件4:必须要有main方法因为main方法是一个类的入口标准代原创 2020-07-30 21:45:40 · 710 阅读 · 2 评论