自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 集合框架简图

2025-04-15 11:50:46 69

原创 报这个错误是什么原因log4j:WARN No appenders could be found for logger (com.example.logging.LogDemo). log4j:WAR

报这个错误是什么原因:log4j:WARN No appenders could be found for logger (com.example.logging.LogDemo). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.

2025-04-13 23:08:17 289

原创 异常的分类

2025-04-13 19:47:58 84

原创 可能存在特殊情况,比如控制台显示有延迟、缓冲问题等影响了显示顺序。

从控制台输出看,正常逻辑应是先执行 System.out.println("=== 未处理异常演示 ===");输出对应文本,再因 arr 为 null 访问 length 触发 NullPointerException 输出异常信息。可能存在特殊情况,比如控制台显示有延迟、缓冲问题等影响了显示顺序。

2025-04-12 22:31:58 233

原创 eat后面少加了{导致出现语言级别 ‘8‘ 不支持 隐式声明的类,你敢信???

eat 方法声明后 提前闭合了类的大括号,导致 play 和 print 方法被“挤出”了类的作用域,编译器误以为这些方法是“隐式声明的类”(其实是语法结构混乱导致的误报)。System.out.println("宠物名称:" + name + ",健康值:" + health + ",亲密度:" + closeness);System.out.println(name + "吃掉了" + value + "克" + food + ",健康值+" + value);//少加了大括号导致错误。

2025-04-09 00:02:49 367

原创 Java 里面 this 去调用构造函数,它不能递归调用吗?那我给一个终止条件呢?他这个有什么用啊?

this”调用构造函数主要是为了在一个类里,不同构造函数之间能互相调用,实现代码复用。比如一个构造函数有更多参数,它可以先调用参数少的构造函数,再做一些额外处理。在Java里,“this”调用构造函数是不能递归调用的哦。要是递归调用,就会一直调用下去,最后导致栈溢出错误。比如你在一个构造函数里用“this()”调用自己,没有终止条件,程序就会陷入死循环啦。因为“this”调用构造函数必须在构造函数的第一行,在调用的时候没办法先检查终止条件。所以不管怎样,都不能用“this”递归调用构造函数呢。

2025-03-27 23:50:11 110

原创 Java 中多态是用重载来实现的是吧?子类应该不能重写父类的构造函数吧?子类会继承父类的非私有构造函数是什么意思?自动调用默认构造函数,那我如果是不是默认构造函数呢?

比如父类有个公共的构造函数,里面初始化了一些基本的成员变量,子类继承后就不用再重复写这些初始化代码啦,直接用父类的构造函数就行。而且继承关系里,子类本来就该基于父类的基本初始化来扩展功能,要是随便重写构造函数,整个类层次结构的初始化顺序和逻辑就容易乱套啦。重写呢,是子类用和父类相同的方法签名,去重新实现父类的方法,这样子类对象调用这个方法时,执行的就是子类重写后的逻辑。如果父类没有默认构造函数,只有带参数的构造函数,子类就不能自动调用了,得用“super”关键字来指定调用父类的带参数构造函数。

2025-03-26 23:29:50 347

原创 栈资源释放示例

System.out.printf("内存使用变化: 初始 %.2fMB -> 之后 %.2fMB (差异 %.2fMB)\n",System.out.printf("内存使用变化: 初始 %.2fMB -> 之后 %.2fMB (差异 %.2fMB)\n",System.out.println("栈资源已成功释放!System.out.printf("GC后内存: %.2fMB (释放 %.2fMB)\n",System.out.printf("GC后内存: %.2fMB (释放 %.2fMB)\n",

2025-03-25 22:32:13 310

原创 gc垃圾回收机制详解和原理!什么是新生代?什么是老年代?它们的区别是什么?Eden区是什么survivor又是什么?新生代,老年代?可达性分析算法又是什么?复制算法和标记整理算法又是什么?

Java垃圾回收(GC)是自动内存管理机制,主要原理:1) 分代收集算法将堆内存分为新生代和老年代 2) 可达性分析算法判断对象是否存活 3) 使用标记-清除、复制、标记-整理算法回收内存 4) 通过Stop-The-World暂停应用线程执行回收。- 标记 - 整理算法(Mark-Compact) :先标记出所有需要回收的对象,然后将所有存活的对象向一端移动,最后清理掉端边界以外的内存。Java 垃圾回收机制通过可达性分析来确定哪些对象是垃圾,然后根据不同的垃圾回收算法来回收这些垃圾对象。

2025-03-25 22:27:47 445

原创 java中的枚举类型和c,c++的有区别吗?c,c++的枚举,结构体,联合体,三种数据有什么区别和联系

C 和 C++:C 和 C++ 的枚举主要用于定义一组命名的整数常量,通常不具备像 Java 枚举那样丰富的功能。枚举常量是枚举类型的实例,编译器会严格检查传递的参数是否为该枚举类型的有效常量。都是用户自定义类型:枚举、结构体和联合体都是用户自定义的数据类型,开发者可以根据需要定义自己的类型和数据结构。定义:是一种用户自定义的数据类型,它可以包含不同类型的成员变量,这些成员变量在内存中是连续存储的。Java:Java 的枚举常量有自己的命名空间,不同枚举类型的常量不会相互冲突。

2025-03-24 22:18:20 359

原创 java中的常量可以不用在声明的时候初始化,c中的必须在声明的时候初始化,可不可以这么理解?

Java 中的常量不一定要在声明时初始化,可根据常量的类型(静态常量、实例常量、局部常量)在不同的位置完成初始化;而 C 语言里使用 const 定义常量时,通常要在声明时就初始化。不过,在 C 语言里,const 更多地表示“只读”,不像 Java 里 final 那样严格的常量语义。// 错误,未初始化。这种理解不完全正确,下面分别说明 Java 和 C 中常量的初始化情况。Java 中常量的初始化。C 语言中常量的初始化。

2025-03-24 22:15:23 463

原创 Java中static final才是修饰常量的,单独的final并不能修饰常量这样理解对吗?

static final 组合使用通常用于修饰全局常量,这种常量属于类本身,而不是类的某个实例,所有实例共享同一个常量值。static final:不仅保证变量的值不可变,还让该常量成为类级别的全局常量,所有实例共享同一个值,通常用于定义一些不会改变的通用常量,如数学常量、配置信息等。实例常量属于类的每个实例,不同实例的常量值可以不同,需要在声明时初始化或者在构造函数里完成初始化。final:主要用于保证变量的值不可变,可用于实例常量和局部常量,不同实例的常量值可以不同。final 单独修饰常量。

2025-03-24 22:12:29 425

原创 go自定义快捷短语

这样,你就创建了一个自定义的快短语,当你在Go文件中输入log并按Tab键时,就会自动展开成fmt.Println(),并且光标会停留在括号内,等待你输入要打印的内容。

2023-03-28 17:04:01 379

原创 goland import的包自动删除(导入包自动删除)解决方案

由于goland会自动优化代码,所以没有使用过的包会被自动优化掉。2.关闭切换应用自动保存代码。1.关闭自动优化代码。

2023-03-22 17:54:58 3281

原创 虚拟机访问共享文件夹需要输入主机用户名与密码

按如下截图操作,计算机配置-Windows设置-安全设置-本地策略-安全选项,在右边找到:网络访问:本地账户的共享和安全模型,双击打开。将经典-改为 仅来宾-对本地用户进行身份验证,其身份为来宾,确定即可。按WIN+R键打开运行,输入gpedit.msc打开本地组策略编辑器。再去局域网其他电脑上打开网络邻居,找到刚才设置的电脑进入。1.找到一个文件,查看属性,选择共享,进入网络共享中心。2.滑倒最下面关闭密码保护。问题原因:开启了密码保护。...

2022-08-10 12:00:30 4980

原创 文件部署的时候报错了

2022-08-08 04:47:58,788] Artifact 文件上传:war exploded: Error during artifact deployment. See server log for details. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke。...

2022-08-08 16:56:53 414

原创 javaWeb上传文件 servlet类编写

代码】javaWeb上传文件 servlet类编写。

2022-08-04 22:07:08 132

原创 maven无法导出文件

在maven中发现无法导出文件,在pom.xml文件中加入这个配置代码即可。

2022-07-17 11:53:39 155

原创 Maven Plugins报红的一个重大原因可能导致无法导入依赖

当我们重新加载maven项目(reload all maven project),如果不删除这些文件,maven的Plugin就会报红导致我们无法导入其他依赖。产生`Failed to execute goal org.apache.maven.plugins:maven-install-plugin:2.4:ins`的报错

2022-07-17 10:13:22 2615

原创 动态代理工具类

实现动态代理需要实现InvocationHandler接口,其中中有一个invoke方法,代理对象的每个执行方法都会替换执行Invocation中的invoke方法。动态代理程序运行时创建的代理方式被成为动态代理。第二步,设置代理,得到代理对象。第一步,创建需要代理的对象。第三步,处理代理函数。...

2022-07-16 09:11:17 133

原创 注解的基本使用

Document表示释放将注解生成在Javadoc中。@Inherited继承,子类可以继承父类的注解。@SuppressWarnings抑制警告信息。@Deprecated修辞方法,表示方法过期。@Override适用于修辞方法,表示重写。@Retention生命周期。@Target使用范围。元注解注解注解的注解。...

2022-07-15 13:39:45 71

原创 Spring 常用注解说明

Spring常用注解@Autowire:自动装配:接口只能有一个实现类,通过byType方式注入。@Resource:接口可以有多个实现类,先通过byName方式进行匹配,若匹配失败再通过byType方式注入。@Qualifier:接口可以有多个实现类,可以按实现类的类名进行注入,配合Autowire使用。.........

2022-07-13 16:37:06 145

原创 Spring 注解实现自动装配配置文件

Spring 注解实现自动装配配置文件xml配置文件:实体类:human类:猫类:狗类:需要导入的依赖:

2022-07-13 14:11:33 145

原创 IDEA 个性化自定义代码模板

点击file——》Setting直接搜索file and code Templates或者点击Edit-----》file and code Templates添加模板,粘贴模板内容开始使用,本文是一个Spring配置文件的模板

2022-07-13 11:25:37 379

转载 bean的作用域

bean的作用域

2022-07-13 10:46:14 77

原创 报错: Cannot convert value of type ‘java.lang.String‘ to required type

Caused by: java.lang.IllegalStateException: Cannot convert value of type ‘java.lang.String’ to required type ‘com.sun.org.apache.xpath.internal.operations.String’ for property ‘name’: no matching editors or conversion strategy foundat org.springframework.

2022-07-12 23:33:00 6328

原创 Spring 配置文件

Spring 官网无内容配置文件

2022-07-12 14:35:16 98

原创 MVC三层架构图解

经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。M即model模型是指模型表示业务规则。在MVC的三个部件中,模型拥有最多的处理任务。被模型返回的数据是中立的,模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。V即View视图是指用户看到并与之交互的界面。比如由html元素组成的网页界面

2022-07-11 18:37:43 2445

原创 没有序列化错误

org.apache.ibatis.cache.CacheException: Error serializing object. Cause: java.io.NotSerializableException: com.li.pojo.User

2022-07-11 18:00:00 147

原创 db.properties文件配置

#加载驱动driver=com.mysql.jdbc.Driver#mysql的路径地址和一些设置url=jdbc:mysql://localhost:3306/mybatis?useSSL=false&useUnicode=true&characterEncoding=utf-8#自己数据库设置的用户名username=root#自己数据库设置的密码password=123456...

2022-07-11 17:40:59 360

原创 Mybatis 使用工具类

Mybatis工具类:通过SqlSessionFactoryBuilder创建SqlSessionFactory,再用SqlSessionFactor创建会话返回。

2022-07-11 17:33:11 182

原创 mybatis环境配置与依赖

mybatis的核心配置文件Mybatis 接口实现xml文件配置:只要将一些点改为mapper即可mybatis需要导入的依赖mybatis配置文件的官网地址官网地址:https://mybatis.net.cn/getting-started.html

2022-07-11 17:29:45 536

转载 ehcache的配置文件

ehcache的一些配置信息

2022-07-11 14:13:23 287

原创 IDEA debug时报错

FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_LOAD(196)ERROR: transport library not found: dt_socketERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_LOAD(509)JDWP exit error AGENT_ERROR_TRA

2022-07-11 11:51:49 2429 2

原创 安装mysql

1.解压2.把mysql解压包放到自己的电脑环境目录下3.配置环境变量 去path中 把mysql的bin目录放入4.写ini,将里面的地址改成自己的

2022-03-22 11:45:56 979

原创 【无标题】ExceptionInInitializerError

ExceptionInInitializerErrorextends LinkageError表示在静态初始化程序中发生意外异常。 抛出一个ExceptionInInitializerError ,以指示在静态初始化程序或静态变量的初始化程序的评估期间发生异常。当出现这个有可能是我们的路径解码有中文,所以导致解码失败...

2022-02-24 17:54:47 792

原创 try-catch和throw,throws的区别

看这篇文章https://www.cnblogs.com/zhangdaicong/p/6127984.html

2022-02-24 14:36:40 110

原创 Exception in thread “main“ java.io.NotSerializableException: IO.Student

不能序列化异常Exception in thread “main” java.io.NotSerializableException: IO.Student解决办法:在对象中做标记允许序列化(实际是实现一个空接口serializable)

2022-01-07 15:33:17 752

原创 IO流读取一个字节循环无法停止

//-1在内存中是补码形式先将-1转换成char再转换成int输出是65536System.out.println((int)((char)-1));char data = ’ ';while ((data = fil.read())!=-1) {System.out.print(data);}* 会无限循环

2022-01-07 09:56:22 218

原创 Map.Entry这个内部接口的实现在哪?

内部接口的实现与接口的实现相同,implements典型的就是map的内部接口Entry,Map.Entry的实现在它的实现类有一个内部类去实现比如HashMap.Node 这个内部类就是去实现Entry的由于接口不能实例化所以内部接口默认是静态的...

2022-01-06 18:29:16 186

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除