
java
文章平均质量分 60
纳兰青华
一个专注于写程序的疯子
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
IntelliJ IDEA 中左上方未显示项目根目录问题
摘要 IDEA项目中根目录未显示问题可通过以下步骤解决:进入Project Structure设置,为根目录添加Content Root(若报错需先删除子项目的source folder)。操作后即可正确显示项目层级结构。原创 2025-07-26 17:41:23 · 313 阅读 · 0 评论 -
Gradle安装教程
本内容主要介绍为什么学习Gradle,对比Gradle与Maven优缺点,教读者简单安装Gradle原创 2025-07-19 16:08:48 · 314 阅读 · 0 评论 -
JDK8升级为JDK21
摘要: JDK 21的升级带来多项革命性改进:1)虚拟线程(Virtual Threads)显著提升高并发性能,内存占用更低;2)现代化语言特性如模式匹配、记录类简化代码;3)分代式ZGC和向量API优化性能;4)序列化集合、字符串模板提升开发效率;5)增强安全性与维护性。建议新建项目直接采用JDK 21,旧系统分阶段升级。升级时需注意模块化兼容性、依赖库适配及参数调整。安装步骤包括下载JDK 21、修改JAVA_HOME环境变量并验证版本。原创 2025-07-04 11:39:20 · 1138 阅读 · 0 评论 -
RESTful 规范风格
RESTful是一种基于HTTP协议的软件架构风格,强调以资源为核心的设计理念。其核心特点包括无状态通信、统一接口(使用标准HTTP方法)、资源抽象化、可缓存机制和URI指向资源。在设计URL时应遵循小写字母、层级关系明确、不含动词等规范。常用注解如@RestController、@GetMapping等简化开发,HTTP状态码如200、404等规范响应结果。实际应用中,通过不同HTTP方法(GET/POST/PUT/DELETE)实现对资源的操作,避免在URL中出现动词。RESTful架构使API更简洁、原创 2025-07-03 02:18:26 · 688 阅读 · 0 评论 -
记录Idea运行控制台乱码处理方案
解决Idea控制台乱码的4种方法:1) 修改运行配置的VM选项,添加UTF-8编码参数;2) 代码中强制设置输出流编码为UTF-8;3) 永久解决方案:检查全局编码设置、修改IDE启动参数、确保文件编码为UTF-8;4) 终极排查:删除IDEA缓存或重置注册表。每种方法都配有详细操作步骤和图示说明,建议按顺序尝试解决乱码问题。原创 2025-06-25 18:24:58 · 366 阅读 · 0 评论 -
jmeter压力测试报错:Non HTTP response message: Illegal character in path at index 43: 请求路径
jmeter压力测试报错:Non HTTP response message: Illegal character in path at index 43: 请求路径原创 2023-04-02 16:23:12 · 921 阅读 · 0 评论 -
net.sf.json.JSONException: Unterminated string at character 4502 of {“code“:“success“,“number“:.....
如上图,我在https://www.bejson.com/中解析出现错误,查看具体原因,修改数据即可。首先把大括号及其大括号中的内容放进用JSON解析工具解析一下,看有没有问题。于我而言,我的数据多了一个不正常的换行,最后去原数据中,把数据格式修改一下即可。JSON在解析的过程中出现错误。原创 2022-09-19 21:17:44 · 485 阅读 · 0 评论 -
Error:java: 无效的源发行版: xx 和 Error:java: 无效的目标发行版:xx 问题解决
Project中的Project language level版本与Modules中的language level不匹配。原创 2022-08-06 15:41:24 · 360 阅读 · 0 评论 -
Java中jdk环境配置精华版
Java中jdk环境的配置为什么要配置jdk环境当然是为了能够使Java程序能够在电脑的任何位置上运行啦。第一步:自己下载jdk并安装https://www.oracle.com/java/technologies/javase-downloads.html第二步:进入环境变量配置方式一1.右击"我的电脑",点击"属性",选择"高级系统设置"2.选择"高级"选项卡,点击"环境变量";方式二1.当然你也可以使用cmd命令,“wind+R”,输入control 进入控制面板2原创 2020-11-17 23:40:48 · 1371 阅读 · 2 评论 -
Try{}catch(){}finally{}语句中含有return语句如何执行
Try{}catch(){}finally{}语句中含有return语句如何执行这里分多种情况:情况1:try{}中含有return,并且try{}中没有异常,且finally{}中没有return。 public String exceptionTest(){ System.out.println("程序开始执行啦"); try{ int[] arrays = {1,2}; return "try执行完毕"; /原创 2020-10-23 17:32:07 · 179 阅读 · 0 评论 -
关于Java多态和重载
关于多态和重载多态什么是多态多态是同一个行为具有多个不同表现形式或形态的能力。多态存在三个条件继承重写父类引用指向子类对象体现父类类型的引用 指向 子类的对象Person p = new Teacher();该引用只能调用父类中定义的属性或方法如果子类中将父类的方法重写,那么调取方法后执行的结果是子类重写之后的那个结果如果父类与子类有同名的属性 执行父类的属性如果父类与子类有同名的方法 执行子类重写之后的方法若想要调用子类中独有的成员(原创 2020-10-18 22:14:49 · 1393 阅读 · 0 评论 -
水平制表符 \t 和 垂直制表符\v的区别
水平制表符 \t 和 垂直制表符\v的区别水平制表符(‘\t’)其在终端和文件中的输出显示相当于按下键盘TAB键效果。一般系统中,显示水平制表符将占8列。同时水平制表符开始占据的初始位置是第8*n列(第一列的下标为0)。往简单点说就是:每8个字符可以看作一个水平制表符,如果遇到 \t 之前未满8个字符 则 \t 就补空格直到满8个垂直制表符(‘\v’)(verticality)**注意:**对于Java来说没有垂直制表符一般垂直制表符很不常用,下面讲一下C标准中的水平制表符:它的作原创 2020-10-16 18:45:16 · 32996 阅读 · 2 评论 -
什么是转义字符?为什么用转义字符?常见转义字符使用情况?
什么是转义字符定义:转义字符是很多程序语言、数据格式和通信协议的形式文法的一部分。对于一个给定的字母表,一个转义字符的目的是开始一个字符序列,使得转义字符开头的该字符序列具有不同于该字符序列单独出现(没有转义字符开头)时的语义。因此转义字符开头的字符序列被叫做转义序列。一个转义字符可能并没有它自己的意思,因此所有转义序列具有2个或更多字符。简单来说就是在一些字符前加 “” 使它具有其他意义作用一、是将一些有特殊含义字符,标识为普通字符,函数解析字符串时看到转义字符,就不再对其做特殊处理,而原创 2020-10-16 16:57:06 · 47442 阅读 · 2 评论 -
设计模式之单例模式
单例模式的实现1.私有的构造方法2.私有的静态的当前类对象作为属性3.公有的静态的方法返回当前类对象代码实现:public class SingleTon { //1.让构造方法变成私有---保证外面的某个成员位置上创建唯一的一个对象 private SingleTon(){} //2.在当前类种存在一个私有的静态属性 是当前类类型的 private static SingleTon singleTon = new SingleTon(); //3.提供一原创 2020-10-01 23:06:47 · 234 阅读 · 0 评论 -
23种设计模式
23种设计模式什么是设计模式1.设计模式不是知识点2.设计模式是一种设计经验的总结3.设计模式用来解决某些场景下的某一类问题的---->通用的解决方案4.有了设计模式之后,可以让代码更容易被理解,确保了复用性、可靠性、可扩展性设计模式分类设计模式分为三类1.创建型模式(5种)----->用于解决对象创建的过程单例模式工厂方法模式抽象工厂模式建造者模式原型模式2.结构型模式(7种)----->把类或对象通过某种形式结合在一起 构成某种复杂或合理的结构适配原创 2020-10-01 19:14:54 · 330 阅读 · 0 评论 -
方法重写override和方法重载overload的区别
方法重写override 和 方法重载overload重写(Override)重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写!子类从父类中继承过来的 方法不能满足子类需要,可以在子类中重写(覆盖)父类的方法 更多指的是内容。重载(Overload)重载(overloading) 是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。每个重载的方法(或者构造函数)都必须有一个独一无二的参数类型列表。方法原创 2020-09-26 20:31:41 · 187 阅读 · 0 评论 -
nextLine() 和 next()、nextInt()、nextDouble()、nextFloat()方法读取问题解决
问题:在使用nextLine()读取字符串的时候,有时候还没来得及输入就直接跳过了。原因nextLine()方法会以回车符作为截止将回车符连同之前的所有字符组合成一个完整的字符串,交还给我们nextInt()方法会以回车符作为截止将回车符之前的所有字符 回车符留在消息队列中读时先判断读取的是否为数字如果不是则报InputMisMatchException(输入类型不匹配)将读到的每个数字组合成一个字符串,然后再转为一个数字,交换给我们next()用法和nextInt()一原创 2020-09-23 12:10:14 · 2556 阅读 · 0 评论 -
Java中成员变量和局部变量的区别
Java中成员变量和局部变量的区别什么是成员变量和局部变量成员变量:类中方法外的变量局部变量:方法中的变量区别区别成员变量局部变量类中位置不同类中方法外方法内或者方法声明上内存中位置不同堆内存1栈内存2生命周期不同随着对象的存在而存在,随着对象的消失而消失随着方法的调用而存在,随着方法的调用完毕而消失初始化值不同有默认的初始化值没有...原创 2019-12-09 19:16:26 · 209 阅读 · 0 评论 -
Error:java: 无法从静态上下文中引用非静态 变量 this
Error:java: 无法从静态上下文中引用非静态 变量 this分析:出现这种错误首先先分清什么是静态什么是非静态,它们之间的关系是什么?静态方法中不能引用非静态变量非静态方法中能引用静态变量其次要明白类与类之间要分开定义,不能嵌套,这是语法规定错误原因代码如下:public class Demo { public static void main(String[] arg...原创 2019-12-07 21:15:15 · 3958 阅读 · 0 评论 -
Java中set(),get()方法中的getName()、setName()、getAge()、setAge()
set(),get()方法的理解为什么要用set(),get()方法在我们实例化一个类对象的时候,要对这个类对象的属性进行赋值,并且输出这个类的属性。举一个例子:假如定义了一个Person类,要对Person类中的名字,年龄进行赋值public class Demo { public static void main(String[] args) { Person...原创 2019-12-07 19:13:56 · 20788 阅读 · 5 评论 -
length、length()、size()区别
length、length()、size()区别> 一般来说没有括号的是属性,有括号的是方法。lengthlength 是针对数组来说的,返回值是数组的长度。int[] array = {1,2,3,4,5,6};System.out.println(array.length);结果为6。length()length() 针对于字符串的,是字符串的一个方法,返回值是字符...原创 2019-12-07 13:46:32 · 331 阅读 · 0 评论 -
文本文档的后缀名怎么显示和隐藏
文本文档的后缀名怎么显示和隐藏问题当我用记事本写java程序的时候,需要把文本的后缀名txt改为java,但是改了半天发现没修改成功,原来是文档中把后缀名隐藏了,无论怎么.java最后的效果都是和重命名一样。解决办法以Windows10 为例首先双击 “我的电脑”进入点击菜单栏中的 “查看”接着在查看框中找到 “文件扩展名”显示扩展名就”✔“,隐藏则取消 “✔...原创 2019-12-07 11:07:36 · 5637 阅读 · 3 评论 -
使用记事本编译Java代码?如果运行时出现 “编码GBK的不可映射字符(0x9A)”该怎么办?
使用记事本编译Java代码?如果运行时出现 “编码GBK的不可映射字符(0x9A)”该怎么办?首先输入编写好代码的所在驱动盘 盘名+冒号接着输入 cd 代码所在文件夹名 *注 cd命令(change directory)用于改变目录实则选择文件夹。最后通过 javac 文件名.java 编译 *注:编译是将字符源码转为字节码再通过 java 文件名 ...原创 2019-12-04 10:12:36 · 2432 阅读 · 1 评论