![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 59
秃头不用洗发水
github:https://github.com/345404748
展开
-
【idea】idea2023最新激活(亲测)
【idea】idea2023最新激活(亲测)原创 2023-12-26 17:40:29 · 14406 阅读 · 9 评论 -
【Redis】数据类型及应用场景
Redis:基于KV键值对的内存数据库原创 2023-05-13 03:50:52 · 504 阅读 · 0 评论 -
【Java】抽象类与接口
在面向对象编程中,抽象是非常重要的一个特征。在Java中可以通过抽象类或接口的形式实现这一特性。原创 2023-05-11 21:30:42 · 385 阅读 · 0 评论 -
【Java】哈希冲突(哈希碰撞)
关于哈希冲突的理解和解决原创 2023-05-11 03:50:20 · 1948 阅读 · 1 评论 -
Java开发-空指针(NullPointException)
空指针NPE Animal dog = new Animal(); System.out.println(dog.getName().equals("tom")); 空指针异常在日常开发和学习中,是非常容易遇到的问题。由于代码编写不够谨慎或者不规范,就会遇到这种异常。其实最常见的就是在参数的传递或者试图get一个值时,set了一个null空对象,导致抛出了**NullPointException ** 个人认为有意识的防止空指针异常是非常有必要的,即边界问题和减原创 2021-09-05 04:02:27 · 986 阅读 · 0 评论 -
Java8工具类Optional
关于Java8工具类Optional的一点使用心得 对于Java开发中遇到的npe(空指针问题),其实使用工具类Optional处理效果一般,个人感觉最大的用处就是可以减少一定的if语句,减少一定的非空判断,千万不能将Optional放在if内,会非常多此一举。最实用的用发例子,如果获取不到student的name属性(为空),那么将使用student的rename属性,即使rename、name为空,也不会出现空指针异常。import lombok.Data;import java.util.O原创 2021-07-26 13:55:52 · 125 阅读 · 0 评论 -
StopWatch简单使用
StopWatch可以方便记录运行时间,主要用于单线程,单位为ms级,常用于日志记录运行时间。举例import org.apache.commons.lang3.time.StopWatch;public class qwe { public static void main(String[] args) { // 初始化 (ms) StopWatch started = StopWatch.createStarted(); tr原创 2021-07-23 14:56:32 · 1002 阅读 · 0 评论 -
Windows停止某端口Verify the connector‘s configuration, identify and stop any process that‘s listening..异常
有时候会发现Javaweb(springboot)跑不起来,显示端口被占用,这个时候关掉占用接口的进程即可。关闭方法打开cmdwin+r输入cmd查看占用端口netstat -ano | findstr 8088删除占用进程数字为删除进程的pidtaskkill /PID 16508 /T /F...原创 2021-04-08 14:13:47 · 1328 阅读 · 0 评论 -
Java-如何比较时间
修改毕业设计,正文题目多了个天字两个时间比较public static boolean test2(String date1 , String date2){SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd hh-mm-ss");try { return simpleDateFormat.parse(date1).before(simpleDateFormat.parse(date2));} catc原创 2021-03-10 10:14:10 · 391 阅读 · 1 评论 -
关于JDK8和JDK11切换问题
在已经配置好JDK8后(如果从未安装任何jdk,还是需要配置环境变量的JAVA_HOME),如果需要使用JDK11,可以在Oracle官网注册登录后下载JDK11对应的安装包(.exe),安装完成后,JDK11会自动替换JDK8,不需要重新配置环境。原创 2021-03-07 19:45:12 · 4701 阅读 · 3 评论 -
Java-日期类(JDK8)
JDK8中新的日期类api。在之前虽然也有Date和Calendar日历类,但是处理日期有一定不方便,而且有偏移性(从0开始),并且不是线程安全的,所以JDK8中的新特性之一就是新的日期类,这简化了日期时间的管理。原创 2021-02-28 05:04:58 · 2885 阅读 · 8 评论 -
Java输出数据到txt文件(使用BufferedWriter)
简单使用BufferedWriter便可以写入到文件。原创 2021-02-14 07:02:33 · 3876 阅读 · 8 评论 -
Java-异常
编程时往往会遇到程序异常的情况,在Java中,异常本身是一个对象,产生异常就是产生一个异常对象。异常和错误是不同的。原创 2021-02-11 01:01:39 · 264 阅读 · 1 评论 -
Java-hashCode()
Java-hashCode()hashcode相同时,而equals()方法不相同,叫做hash冲突。官方想给每个对象一个唯一标识,即hashcode但目前任何hash算法都无法满足,数据量大时都会产生冲突。 当两个对象的equals相同的时候,如果是字符串,那不用说都是从字符串常量池里面取得,也就是说同一个,这个时候他们的值是相同的,hashcode也是相同的,当我们自定义类对象时,也是一样的,因为重写了equals方法,所以判断他们的内容也就是每一个属性,也是一样的,两个对象相同的时候他们都是原创 2021-02-07 19:03:03 · 502 阅读 · 1 评论 -
Java-反射
Java-反射简单理解类是一个模板,用于描述一类对象的行为和状态,对象是类的一个实例,有状态和行为。类对象,是用于描述这种类,都有什么属性、方法的。反射是从Class类对象开始,因为万物皆可对象,代码存储在.java文件中,编译得到.class文件,用于执行,即这些class文件就是Class类。反射就是对这个这个Class类进行 “解剖” ,感觉这个词用的很形象。“解剖” 是在Class类对象中,利用反射把一个类的成员变量、方法、属性等信息,映射成一个个对象。然后对对象进行操作。反射主要是原创 2021-02-07 18:56:51 · 321 阅读 · 1 评论 -
Java-线程
文章目录1.线程与进程进程线程区别2.线程的生命周期3.创建线程继承Thread类实现Runnable接口关系关于两种创建线程方法,资源是否共享说法的一点理解问题:启动一个线程使用run()还是start()方法?1.线程与进程操作系统中运行的程序,就是一个进程。而线程便是进程的组成部分。进程 一个进程就是一个执行的程序,而每一个进程都有自己独立的一块内存空间和一组系统资源。每一个进程的内部数据和状态都是完全独立的。进程是系统运行程序的基本单位,是系统进行资源分配和调度的基本单位,是操作系统的原创 2021-02-07 05:43:48 · 409 阅读 · 0 评论 -
Java-重载/重写区分
多态是Java面向对象编程的三大特点之一,多态是同一个行为具有多个不同表现形式或形态的能力,通过继承的上下转型、接口的回调以及 方法的重写和重载 可以实现多态。方法重写 如果从父类继承或接口实现的方法,不满足子类的需求,可以对其进行改写,这就是方法重写。目的:父类的功能无法满足子类的需求,需要重写功能。特点:发生在具有子类父类两个关系的类中;方法名相同;参数的列表完全相同;返回值类型可以相同或者是其子类;访问权限修饰符不能够严于父类;抛出的异常不能比父类的异常大;私有修饰原创 2021-02-05 23:19:55 · 293 阅读 · 0 评论 -
Java-抽象类和接口的区别
我的博客园:https://www.cnblogs.com/djhzzl/p/14341834.html1、概念抽象类如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。 由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。也是因为这个原因,通常在设计阶段决定要不要设计抽象类。 在Java语言中使用abstract class来定义抽象类。 在Java中抽原创 2021-02-05 22:51:59 · 301 阅读 · 0 评论 -
Java-什么是线程安全/不安全
问题:什么是线程安全/不安全下面是个例子:假如现在A、B二人同时进行车票购买,总共有100张车票,A、B各买一张票。如果是线程安全,那么应该是A、B各买一张票后,剩余 98 张票。线程安全:指多个线程在执行同一段代码的时候采用加锁机制,使每次的执行结果和单线程执行的结果都是一样的,不存在执行程序时出现意外结果。如果是线程不安全,则可能会出现A、B各买一张票后,同时执行 100 - 1 操作 ,剩余 99 张票。线程不安全:指不提供加锁机制(synchronized) 保护,有可...原创 2021-02-05 17:54:29 · 985 阅读 · 1 评论 -
Java-单例模式
单例(Singleton)模式是设计模式之一,最显著的特点就是一个类在一个JVM中只有一个实例,避免繁琐的创建销毁实例。原创 2021-02-05 17:29:19 · 2634 阅读 · 3 评论 -
Java-switch case
支持类型switch case 语句支持类型基本类型:byte 、 short 、 char 、 intEnum(枚举类型)String (JDK7之后)枚举类型(Enum)Enum常用于switch语句,可以方便定义常量。public class Enum_test { public enum Family{ DAD,MOM,SON,DAUGHTER } public static void main(String[] args) {原创 2021-02-04 21:58:08 · 309 阅读 · 7 评论 -
Java-String字符串相加及拼接
Java-String字符串相加及拼接我的博客园: https://www.cnblogs.com/djhzzl/p/14374716.html字符串相加 String test1 = "test1" ; String test2 = test1 + "test2" + "test3" ; System.out.println(test2); //输出test1test2test3在idea中使用加号,可以将两个字符串直接拼接,就如同上面代码一样,自动将两部分拼接,但是Str原创 2021-02-04 20:08:40 · 1741 阅读 · 3 评论 -
Java-Junit4
Java-Junit4我的博客园:https://www.cnblogs.com/djhzzl/p/14360030.htmlJava单元测试框架Junit 4非常好用,简单配置一下就可以使用。1.先编写一个测试方法public class Main { public void test_junit (){ System.out.println("test_junit"); } public static void main(String原创 2021-02-04 17:34:53 · 402 阅读 · 7 评论 -
Java中JDK、JRE、JVM关系
Java中JDK、JRE、JVM关系关系JREbinlibJDK跨平台性关系JDK:开发工具包,Java开发核心。JRE:Java运行环境。JVM:Java虚拟机,实现跨平台最核心部分。JDK11后默认不创建单独JRE目录JREbin和lib两个主要文件目录构成JREbin包含Java运行所需的可执行文件,JVM相关文件所在。lib包含Java运行时所需的Java类库JDK包含Java编译器、Java运行环境(jre)、常见Java基础类库等工具。跨平台性由于Java原创 2021-02-03 01:22:38 · 527 阅读 · 3 评论