![](https://img-blog.csdnimg.cn/2021091012523173.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java
文章平均质量分 86
记录Java相关的内容
ED_Sunny小王
这个作者很懒,什么都没留下…
展开
-
JavaSE-15笔记【注解(+2024新)】
什么是注解?①注解是JDK1.5才引入的。②注解可以标注在 类上,属性上,方法上 等。③注解可以做到在不改变代码逻辑的前提下在代码中嵌入补充信息。注解与注释注释:给程序员看的,编译器编译时会忽略注释。注解:给编译器看的,或给其它程序看的,程序根据有没有这个注解来决定不同的处理方式。注解的重要性框架实现原理:框架 = 反射 + 注解 + 设计模式。使用@interface来定义注解。默认情况下注解可以出现在类上、方法上、属性上、构造方法上、方法参数上等…。原创 2024-04-22 15:04:22 · 794 阅读 · 0 评论 -
JavaSE-14笔记【反射机制(+2024新)】
反射机制是JDK中的一套类库,这套类库可以帮助我们操作/读取class文件,反射机制可以让程序更灵活,后期学习的大量java框架底层都是基于反射机制实现的,需要能够熟练地使用反射机制中的方法。原创 2024-04-22 14:44:13 · 425 阅读 · 1 评论 -
JavaSE-13笔记【集合2(+2024新)】
return age;} }Objects;return age;@Override//key中存储自定义类型User Map < User , String > map = new HashMap < User , String >();//创建User对象 User user1 = new User("张三" , 18);User user2 = new User("李四" , 23);原创 2024-04-14 11:23:10 · 835 阅读 · 0 评论 -
JavaSE-12笔记【集合1(+2024新)】
什么是集合,有什么用?①集合是一种容器,用来组织和管理数据的。非常重要。②Java的集合框架对应的这套类库其实就是对各种数据结构的实现。③每一个集合类底层采用的数据结构不同,例如ArrayList集合底层采用了数组,LinkedList集合底层采用了双向链表,HashMap集合底层采用了哈希表,TreeMap集合底层采用了红黑树。④我们不用写数据结构的实现了。直接用就行了。但我们需要知道的是在哪种场合下选择哪一个集合效率是最高的。原创 2024-04-14 11:20:46 · 944 阅读 · 0 评论 -
JavaSE-11笔记【多线程2(+2024新)】
在静态方法上添加synchronized关键字,实际上是为了保证静态变量的安全;在实例方法上添加synchronized关键字,实际上是为了保证实例变量的安全。原创 2024-04-03 15:48:46 · 1052 阅读 · 0 评论 -
JavaSE-10笔记【多线程1(+2024新)】
单核CPU上的多线程,只是由操作系统来完成多任务间对CPU的运行切换,并非真正意义上的并发。随着多核CPU的出现,也就意味着不同的线程能被不同的CPU核得到真正意义的并行执行,故而多线程技术得到广泛应用。不管并发还是并行,都提高了程序对CPU资源的利用率,最大限度地利用CPU资源,而我们使用多线程的目的就是为了提高CPU资源的利用率。原创 2024-04-03 15:45:56 · 1120 阅读 · 0 评论 -
JavaSE-09笔记【异常(+2024新)】
什么是异常?有什么用?Java中的异常是指程序运行时出现了错误或异常情况,导致程序无法继续正常执行的现象。例如,数组下标越界、空指针异常、类型转换异常等都属于异常情况。Java提供了异常处理机制,即在程序中对可能出现的异常情况进行捕捉和处理。异常机制可以帮助程序员更好地管理程序的错误和异常情况,避免程序崩溃或出现不可预测的行为。没有异常机制的话,程序中就可能会出现一些难以调试和预测的异常行为,可能导致程序崩溃,甚至可能造成数据损失或损害用户利益。原创 2024-03-19 16:07:14 · 1116 阅读 · 0 评论 -
JavaSE-08笔记【常用类2(+2024新)】
首先,包装类都是引用数据类型。其次,包装类主要提供了更多的实用操作,这样更容易处理基本类型。所有的包装类都是 final 的,所以不能创建其子类,包装类都是不可变对象。装箱:基本数据类型—>引用数据类型【通过包装类的构造方法】拆箱:引用数据类型—>基本数据类型【通过包装类引用.xxxValue()方法】enum 枚举类型名 {枚举值1, 枚举值2, 枚举值3, 枚举值4。原创 2024-03-19 16:06:25 · 337 阅读 · 0 评论 -
JavaSE-07笔记【常用类1(+2024新)】
不需要死记硬背,知道有,想得起来用,具体翻阅API帮助文档即可。原创 2024-03-12 09:27:55 · 804 阅读 · 0 评论 -
JavaSE-06笔记【数组(+2024新)】
/对自定义的引用类型的数组进行排序,不能直接调用Arrays.sort public static void main(String [ ] args) {//需要重写Student的toString方法 } }Arrays;//对自定义的引用类型的数组进行排序,不能直接调用Arrays.sort//需要重写Student的toString方法int id;报错(出现类型转换异常):因为此时Student类还不是可比较的,需要继承。原创 2024-03-12 09:21:00 · 981 阅读 · 0 评论 -
JavaSE-05笔记【面向对象02】
聚合关系,是关联关系的一种,是较强的关联关系,是整体和部分的关系,如:汽车和轮胎,它与关联关系不同,关联关系的类处在同一个层次上,而聚合关系的类处在不平等的层次上,一个代表整体,一个代表部分,在 java 语言中使用实例变量体现。合成关系,也是关联关系的一种,是比聚合关系强的关联关系,如:人和四肢,整体对象决定部分对象的生命周期,部分对象每一时刻只与一个对象发生合成关系,在 java 语言中使用实例变量体现。原创 2024-02-23 16:07:24 · 1026 阅读 · 0 评论 -
JavaSE-04笔记【面向对象01】
/采用 interface 定义接口//定义功能,没有实现//实现委托给类实现//正确,默认为 public abstract 等同 public abstract void addStudent(int id, String name);//正确,可以加入 public 修饰符,此种写法较多//正确,可以加入 abstract,这种写法比较少//编译错误,因为接口就是让其他人实现//采用 private 就和接口原本的定义产生矛盾了。原创 2024-02-23 10:28:13 · 1111 阅读 · 0 评论 -
JavaSE-03笔记【继承~super】
继承是面向对象三大特征之一,封装居首位,封装之后形成了独立体,独立体 A和独立体B 之间可能存在继承关系。继承时子类继承父类的特征和行为,使得子类对象(实例)具有父类的属性,或子类从父类继承方法,使得子类具有与父类相同的行为。兔子和羊属于食草动物类,狮子和豹属于食肉动物类。食草动物和食肉动物又是属于动物类。所以继承需要符合的关系是:is-a(Rabbit is-a Animal)【符合这种关系的,就可以使用继承】,父类更通用,子类更具体。原创 2024-02-16 12:05:32 · 998 阅读 · 0 评论 -
JavaSE-02笔记【封装~this和static】
this不能出现在static的方法中,可以出现在实例方法中,代表当前对象。多数情况下this是可以省略不写的,但是在区分局部变量和实例变量的时候不能省略。在实例方法中可以直接访问当前对象实例变量以及实例方法,在static方法中无法直接访问实例变量和实例方法。static 是 java 语言中的关键字,表示“静态的”,它可以用来修饰变量、方法、代码块等,修饰的变量叫做静态变量,修饰的方法叫做静态方法,修饰的代码块叫做静态代码块。原创 2024-02-13 10:14:21 · 694 阅读 · 0 评论 -
JavaSE-01笔记【方法~对象的创建和使用】
修饰符列表] 返回值类型 方法名(形式参数列表){方法体;例如代码:public static 是修饰符列表;void 是返回值类型;sumInt 是方法名;(int a , int b)是形式参数列表,简称形参,每一个形参都是局部变量;形参后面使用一对儿大括号括起来的是方法体,方法体是完成功能的核心代码,方法体中的代码有执行顺序的要求,遵循自上而下的顺序依次逐行执行,不存在跳行执行的情况。再如代码:return c;以上程序中 sumInt 之前的 int 是返回值类型。原创 2024-01-14 15:15:06 · 956 阅读 · 0 评论 -
JavaSE-00笔记【语言特性~控制语句】
不同数据类型的数据会给其分配不同大小的空间进行存储。数据类型作用就是决定程序运行阶段给该变量分配多大的内存空间。Java 中的数据类型包括两大类,一类是基本数据类型,另一类是引用数据类型。第 1 类:整数型(不带小数的数字):byte,short,int,long第 2 类:浮点型(带小数的数字):float,double第 3 类:字符型(文字,单个字符):char第 4 类:布尔型(真和假):booleanJava 中的字符串属于引用数据类型,不属于基本数据类型的范畴。原创 2024-01-08 20:13:19 · 972 阅读 · 0 评论 -
java.util.MissingResourceException: Can‘t find bundle for base name db, locale zh_CN问题解决
使用 java.util.ResourceBundle 来读取配置文件(.properties)文件得到时候报错….java.util.MissingResourceException: Can't find bundle for base name db, locale zh_CN代码:ReflectTest07.java (读取.properties配置文件):import java.util.ResourceBundle;/** * 资源绑定器 */public class Refle原创 2021-09-02 09:43:36 · 5617 阅读 · 1 评论 -
生产者和消费者问题(使用wait()+notify方式简单解决)
wait()方法、notify()和notifyAll()方法wait()方法、notify()和notifyAll()方法不是线程对象的方法,而是Object类中自带的方法,java中任何一个对象都有这三个方法。且这三个方法是建立在synchronized线程同步的基础之上的,必须与synchronized一起使用。Object o = new Object;o.wait();//作用:让当前正在o对象上活动的线程(即当前线程)进入等待状态,进入该对象的等待池(是一种无限期等待,直至被唤醒).原创 2021-08-14 20:07:44 · 788 阅读 · 0 评论 -
synchronized面试题
有关synchronized的面试题synchronized的三种用法第一种:同步代码块(较为灵活,可以尽量缩小同步范围)synchronized(线程共享对象){ 同步代码块;}第二种:在实例方法上使用synchronized此方法表示共享对象一定是当前对象this,并且同步代码块为整个方法体。(可能会扩大同步范围,降低效率,但是如果本身就是要同步整个方法,那这样写可以省代码,也是可以的)以上两种都是找对象锁(1个对象1把锁,100个对象100把锁),若线程不是共享同原创 2021-08-10 11:52:00 · 109 阅读 · 0 评论 -
java.sql.SQLSyntaxErrorException: Unknown column ‘xxx‘ in ‘where clause‘问题解决及防止SQL注入
由于拼凑sql语句时对字符类型数据没有用引号引起来造成原创 2021-09-02 10:19:27 · 29136 阅读 · 2 评论 -
Eclipse使用 Spring Starter Project快速创建Spring boot项目、生成的目录结构介绍及pom.xml文件第一行报错的问题解决
Eclipse使用 Spring Starter Project快速创建Spring boot项目、生成的目录结构介绍及pom.xml文件第一行报错的问题解决安装完Maven以及Spring boot插件后,正式开始学习Spring boot ,第一次建Spring boot项目使通过新建如下的Maven项目这种方式生成的目录很多依赖包什么的都要自己去设置,比较繁琐。在看教学视频的时候看到可...原创 2020-04-01 10:47:01 · 1095 阅读 · 5 评论 -
拷贝目录及其下所有的文件(Java递归实现)
package com.sunny;import java.io.*;/** * 递归地读取目录并完成目录的拷贝 */public class DirectoryCopyTest { public static void main(String[] args) { //拷贝源 File sourceFile = new File("F:\\test"); //拷贝目标 File disFile = new File("D:\原创 2021-08-09 11:12:55 · 111 阅读 · 0 评论 -
演示业务中必须使用Statement完成字符串的拼接
接上篇:java.sql.SQLSyntaxErrorException: Unknown column ‘xxx‘ in ‘where clause‘问题解决及防止SQL注入演示业务中必须使用Statement完成字符串的拼接:1、需求:输入desc,对表中的数据按名字降序排序;输入asc,对表中的数据按名字升序排序。2、代码:2.1 尝试用PreparedStatement完成package com.sunny;import java.sql.*;import java.util.Sc原创 2021-09-02 16:49:25 · 442 阅读 · 0 评论