- 博客(190)
- 收藏
- 关注
原创 git重置的四种类型(Git Reset)
2.暂存区:IDEA中以绿色(本次还未提交的新增的文件显示为绿色)或者蓝色(本次修改的之前版本提交的文件但本次还未提交的文件显示为蓝色)显示的文件就是暂存区中的文件(使用了git add命令后文件就归属暂存区了)本地会被回滚,更改文件会被清除, 但是和本次提交不相关的差异文件会被保留, 远程不会回滚。本地会被回滚, 更改文件会被保留, 远程不会回滚, 保留所有更改的暂存区和工作区。本地会被回滚, 更改文件会被保留, 远程不会回滚, 重置暂存区, 保留工作区。
2024-11-11 11:58:21
704
原创 java8 接口的默认方法和静态方法
JAVA 8中引入的默认方法和静态方法是在接口中能够具有方法体的,分别被default和static关键字修饰的方法。
2024-10-14 17:19:24
350
原创 java8 Lambda表达式用法
Lambda 表达式是 Java 8 中引入的一个重要特性,它允许你以一种简洁的方式定义和实现单个抽象方法的接口(也称为 SAM 接口)。Lambda 表达式可以让你的代码更加简洁和易于理解。
2024-10-14 14:32:58
312
原创 java8 @FunctionalInterface 标记函数式接口
注解时,编译器会检查该接口是否确实只有一个抽象方法。如果有多个抽象方法,编译器会报错,从而帮助开发者避免错误。:使用此注解可以清楚地表明设计者意图使该接口作为函数式接口使用。函数式接口是指只有一个抽象方法的接口。这样的接口非常适合用来作为 lambda 表达式的类型。注解可以帮助其他开发者快速识别哪些接口是设计用来作为 lambda 表达式的目标类型。总的来说, 此注解帮助开发者更好地理解和使用函数式接口,并且提高了代码的质量和可维护性。虽然一个接口只要有一个抽象方法就可以作为函数式接口使用,但是。
2024-10-14 10:25:51
218
原创 java8 Stream流详细API及用法
/ 使用 findAny 方法随机选择长度大于等于 5 的一个字符串.findAny();// 输出结果// 如果存在则打印 //cherry。
2024-10-13 17:05:06
698
原创 [java]Iterable<Integer> 和Iterator<Integer>的区别和用法
定义了如何获取一个迭代器来遍历集合。通常由集合类实现,提供遍历能力。:定义了如何遍历集合中的元素。通常用于实际的遍历逻辑。简而言之,Iterable是一个接口,用于获取迭代器;而Iterator是一个接口,用于实际遍历集合中的元素。在实际应用中,Iterable通常用于定义集合的遍历逻辑,而Iterator用于执行具体的遍历操作。
2024-10-12 13:41:36
443
原创 【项目自动化构建工具】gradle入门到进阶
maven侧重于jar包的管理, gradle则侧重于项目的构建, 其次在构建项目方面,gradle的性能是远高于Maven的,尤其是针对于大型多项目的构建Java中默认是default修饰的示例因为groovy为属性直接生成了getter,setter方法,所以直接调用方法声明时的参数类型,返回值类型, return关键字可以省略,如果这个方法有多行语句的话,它会把最后一行的返回值,作为多行的返回值在方法调用时不引起歧义的地方这个小括号可以省略。
2024-09-03 07:46:36
639
原创 [数据库]mysql用户管理&&权限管理
我们用创建的用户在登录之后可以看到他和root看到的数据库是完全不一样的。登录这个账户可以看到还看不到teatdb这个数据库, 因为还没有授权。过来刷新之后可以看到有了。
2024-06-29 08:08:06
304
原创 [数据库]索引机制
4.全文索引, 全文索引是适用于MySAM的, MySAM是一个引擎, 全文索引好比有一篇文章, 里面有电影两个字, 你要快速找到这两个字就可以添加全文索引, 一般mysql带的全文索引但是不好用, 一般用Solr和ElasticSearch。加上索引之后进行二叉树查找, 找到1之后, 发现1的左边没有了, 右边也没有了就停止了, 如果还有会继续往下找, 如果比较30次在二叉树中加覆盖了2的30次方那么大的范围。2.唯一索引, id是唯一的, 同时也是索引。3.普通索引, 单独给一个列添加索引。
2024-06-29 07:27:13
415
原创 [Java基础揉碎]网络相关概念
除了可以通过socket.shutdownOutput()来设置结束标记, 还可以通过writer.newLine()设置。这就是为什么高并发的时候,我们这个端口是有限的,会什么会出现端口冲突。upd相当于tom吆喝了一声, kim有没有收到是不确定的。输入空格不断显示下一页。需要用到的工具类方法。上面的基础上修改部分。
2024-06-11 07:41:34
388
原创 [Java基础揉碎]坦克大战 && java事件处理机制
√好玩√涉及到java各个方面的技术1. java面向对象编程2.多线程3. 文件i/o操作4. 数据库5. 巩固旧知识,学习新知识。
2024-06-04 08:06:39
988
原创 [java基础揉碎]文件&&IO流
目录文件什么是文件 文件流编辑常用的文件操作 创建文件方式一 创建文件方式二 创建文件方式三tip:为什么new file 了还有执行createNewFile?new File的时候其实是在内存中创建了文件对象, 还没有在磁盘中, 当执行createNewFile的时候才是往磁盘中写入编辑获取文件的信息 (常用)目录的操作 (windows文件夹), 在java中目录也被当作一个文件,方式使用没有区别Io流 io原理即流的分类编辑字节流常用子类 文件输入流编辑文件输出流文件拷贝字符流FileRea
2024-05-29 08:10:23
630
原创 [Java基础揉碎]泛型
泛(广泛)型(类型)=> Integer, String, Dog1)泛型又称参数化类型,是Jdk5.0 出现的新特性,解决数据类型的安全性问题2)在类声明或实例化时只要指定好需要的具体的类型即可3)Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生 ClassCastException异常。同时,代码更加简洁、健壮4)泛型的作用是:可以在类声明时通过一个标识表示类中某个属性的类型,或者是某个方法的返回值的类型,或者是参数类型。注意细节1)普通成员可以使用泛型(属性、方法)
2024-04-20 11:26:41
935
原创 [Java基础揉碎]JUnit测试框架
1. JUnit是一个Java语言的单元测试框架2. 多数Java的开发环境都已经集成了JUnit作为单元测试的工具。
2024-04-20 11:22:57
196
原创 [Java基础揉碎]集合
1) 无序(添加和取出的顺序不一致),没有索引2) 不允许重复元素,所以最多包含一个null1)存放的元素是键值对:即K-V2) hashtable的键和值都不能为null,否则会抛出NullPointerException3) hashTable 使用方法基本上和HashMap一样4) hashTable是线程安全的(加了synchronized),hashMap是线程不安全的5) hashTable的底层就是一个HashTable$Entry的数组+单向链表不会转为红黑树。
2024-04-19 12:45:36
746
原创 [Java基础揉碎]日期类
2) Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、 MONTH、DAY_OF_MONTH、HOUR等 日历字段 之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。2) SimpleDateFormat: 格式和解析日期的类 SimpleDateFormat 格式化和解析日期的具体类。1) LocalDate(日期)、 LocalTime(时间)、 LocalDateTime(日期时间)JI。1)第二代日期类,主要就是Calendar类(日历)。
2024-04-11 08:06:39
362
原创 [Java基础揉碎]Biglnteger和BigDecimal类
异常怎么解决, 指定一个精度, 以下是保留分子的精度 , 分子多少位小数就保留多少位小数。2) subtract 减。3) multiply 乘。2) subtract 减。3) multiply 乘。4) divide 除。4) divide 除。
2024-04-10 22:09:29
181
原创 [Java基础揉碎]System类
int[] src={1,2,3};int[] dest = new int[3];System.arraycopy(src, 0, dest, 0, 3);
2024-04-10 21:53:40
221
原创 [Java基础揉碎]Arrays类
如果传进去的是92 , 它的位置本来就该在90的后面, 123的前面, 也就是下标3的位置, 那么加一的负数就是得到-4。追进去binarySort里面看到它调用了接口实现的compare方法, 来决定排序的顺序。如果这个值在数组中不存在, 就返回它本该在的下标加一的负数, 下面就是-6。也就是说匿名内部类这里你返回的是大于0 还是小0 决定了你的排序顺序。追进去可以看到走的binarySort() //二叉树排序。断点可以看到走的TimSort.sort()方法。
2024-04-10 21:43:25
655
原创 [Java基础揉碎]StringBuffer类&& StringBuild类
java.lang.StringBuffer代表可变的字符序列,可以对字符串内容进行增删。很多方法与String相同,但StringBuffer是可变长度的。StringBuffer是一个容器。StringBuffer是一个final类, 不能被继承。1)一个可变的字符序列。此类提供一个与StringBuffer 兼容的API,但不保证同步(StringBuild不是线程安全的)。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候。
2024-04-09 22:28:49
1197
原创 [Java基础揉碎]String
当调用intern 方法时,如果池已经包含一个等于此 String 对象的字符串(用 equals(Object)方法确定),则返回池中的字符串的引用地址。最终指向的是堆中的空间地址。为什么p1.name==p2.name为true , 因为虽然p1, p2对象分别指向堆中的地址, 但是p1.name和p2.name都在堆中指向了同一个常量池地址。此处是先让a的 j 字符和b 的 j 字符比 , 如果一样, 再让a的第二个字符 c 和 b的第二个字符 a 比, 'c'-'a'返回得到2。
2024-04-09 08:08:30
715
原创 [Java基础揉碎]包装类 && 继承图查看所有方法
这里用了自动装箱, 其实底层是调了 valueOf 这个方法, 源码可以看到, valueOf在一个值传进去之后先去判断是否在一个范围内, 在这个范围内直接返回, 如果不在这个范围内再去new 一个新的对象。断点进入可以看到, 因为在比较的时候自动将Integer进行了自动拆箱, 返回了int , int 和int 比较就是值比较。答:都为true时, 上面输出的是1.0, 因为三元运算符是一个整体, Double的精度最高, 提升了优先级。下面输出的是1, if-else是单独的语句, 不会提升优先级。
2024-04-09 07:25:32
1034
原创 [Java基础揉碎]异常
当程序中出现了某些“错误”,但该错误信息并没有在Throwable子类中描述处理,这个时候可以自己设计异常类,用于描述该错误信息。1)定义类:自定义异常类名(程序员自己写)继承Exception或RuntimeException2)如果继承Exception,属于编译异常3)如果继承RuntimeException,属于运行异常(一般来说,继承RuntimeException)
2024-04-07 22:42:48
895
原创 [Java基础揉碎]注解
1)注解(Annotation)也被称为元数据(Metadata),用于修饰解释包、 类、方法、属性、构造器、局部变量等数据信息。2)和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息。3)在JavaSE中,注解的使用目的比较简单,例如标记过时的功能,忽略 警告等。在JavaEE中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替javaEE旧版中所遗留的繁冗代码和XML配置等。
2024-04-02 08:06:35
467
原创 [Java基础揉碎]枚举
1)枚举对应英文(enumeration,简写 enum)2)枚举是一组常量的集合。3)可以这里理解:枚举属于一种特殊的类,里面只包含一组有限的特定的对象象。
2024-04-02 07:27:04
524
原创 [Java基础揉碎]内部类&&匿名内部类
一个类的内部又完整的嵌套了另一个类结构。被嵌套的类称为内部类(inner class), 嵌套其他类的类称为外部类(outer class)。是我们类的第五大成员[思考:类的五大 成员是哪些?[属性, 代码块, 构造器. 方法, 内部类]],内部类最大的特点就是可以直接访问私有属性,并且可以体现类与类之间的包含关系main去调用时, 调用m1, m1下面创建了Inner02去调用内部类的方法。
2024-03-30 12:26:30
858
原创 [Java基础揉碎]接口
接口就是给出一些没有实现的方法,封装到一起到某个类要使用的时候,在根据具体情况把这些方法写出来。语法:interface接口名{//属性//方法class 类名 implements 接口{自己属性;自己方法;必须实现的接口的抽象方法1.在Jdk7.0前接口里的所有方法都没有方法体,即都是抽象方法。2. Jdk8.0后接口可以有静态方法,默认方法,也就是说接口中可以有方法的具体实现实现接口vs继承类。
2024-03-30 09:56:30
588
原创 [Java基础揉碎]抽象类
所谓抽象方法就是没有实现的方法所谓没有实现就是指, 没有方法体当一个类中存在抽象方法是, 这个类也必须声明为抽象类一般来说, 抽象类会被继承, 有子类来具体实现。
2024-03-25 22:18:23
698
原创 [Java基础揉碎]final关键字
final 中文意思:最后的,最终的final可以修饰类、属性、方法和局部变量// 方法的形参也是可以的①定义时: public final double TAX_RATE=0.08;②在构造器中③在代码块中// 只用static这么用的时候会进行类加载, 静态代码块被加载了// final 和 static搭配使用时, 不会进行类加载。
2024-03-24 21:12:39
901
原创 [Java基础揉碎]单例模式
1.静态方法和属性的经典使用2.设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、 以及解决问题的思考方式。设计模式就像是经典的棋谱,不同的棋局,我们用不同的棋谱,免去我们自己再思考和摸索1.所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法2.单例模式有两种方式:1)饿汉式2)懒汉式。
2024-03-24 18:27:00
660
原创 [java基础揉碎]代码块
代码化块又称为初始化块,属于类中的成员[即是类的一部分],类似于方法,将逻辑语句封装在方法体中,通过{}包围起来。但和方法不同,没有方法名,没有返回,没有参数,只有方法体,而且不用通过对象或类显式调用,而是加载类时,或创建对象时隐式调用。
2024-03-24 11:31:58
516
原创 [java基础揉碎]理解main方法语法
4.该方法接收String类型的数组参数,该数组中保存执行java命令时传递给所运行的类的参数, 案例演示, 接收参数。2)但是,不能直接访问该类中的非静态成员,必须创建该类的一个实例对象后,才能通过这个对象去访问类中的非静态成员。2. java虚拟机需要调用类的main()方法,所以该方法的访问权限必须是public。也就是说在执行这个java程序的时候传进去的参数, 它会把这些参数当成一个字符串数组。1)在main()方法中,我们可以直接调用main方法所在类的静态方法或静态属性。
2024-03-24 09:06:16
267
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人