![](https://img-blog.csdnimg.cn/e977a5498dba4a918c7d63830b60a7df.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java基础
文章平均质量分 64
java基础
雾喔
一个积极向上的00后,喜欢折腾一些有趣的东西。
展开
-
extends与implements区别
用于实现一个或多个抽象的接口。二者都可以实现代码复用和多态,但适用于不同的场景和需求。关键字都是用于实现类之间的继承关系。用于继承一个具体的类,而。原创 2024-06-11 15:54:38 · 278 阅读 · 0 评论 -
在Java中,子类继承了父类,子类和父类都定义了一个静态方法,一个午无参构造方法,一个play方法,如果调用子类的play方法的话执行顺序是什么
其中,静态方法的调用和实例方法的调用是有区别的,静态方法是与类本身相关的,而实例方法是与具体的对象实例相关的。近日总结:难受ing。原创 2024-06-11 15:38:14 · 221 阅读 · 1 评论 -
Tomcat
Tomcat 服务器Apache软件基金会项目中的一个核心项目,是一个免费的开放源代码的Web 应用服务器(Servlet容器),属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。:利用Java的异步IO处理,可以通过少量的线程处理大量的请求。默认端口是8080,可以可以通过在tomcat安装包conf目录下,service.xml中的Connector元素的port 属性来修改端口。:一个线程处理一个请求。缺点:并发量高时,线程数较多,浪费资源。原创 2024-05-25 16:32:36 · 504 阅读 · 0 评论 -
详解绝对路径和相对路径的区别
可移植性:绝对路径在不同的操作系统和环境中通常是一致的,因为它们始终从根目录开始。完整性:绝对路径提供了完整的文件或目录路径,从根目录开始,可以唯一地确定位置。相对路径是相对于当前位置或已知位置的路径,它只提供了与当前位置的相对关系。绝对路径(Absolute Path)是从文件系统的根目录开始的完整路径,可以唯一地确定一个文件或目录的位置。简洁性:相对路径相对于当前位置,通常比绝对路径更简洁,尤其是当文件或目录与当前位置在同一层级或子目录中时。原创 2024-05-15 22:04:22 · 637 阅读 · 0 评论 -
Mybatis的缓存机制
每个 SqlSession 中持有了 Executor,每个 Executor 中有一个 LocalCache,当用户发起查询时,MyBatis 根据当前执行的语句生成 MappedStatement,在 Local Cache 进行查询,如果缓存命中的话,直接返回结果给用户,如果缓存没有命中的话,查询数据库,结果写入 Local Cache,最后返回结果给用户。总结来说,二级缓存是 MyBatis 提供的一种跨会话的缓存机制,可以在不同的 SqlSession 之间共享缓存数据。原创 2024-05-10 16:11:01 · 986 阅读 · 0 评论 -
增强for循环(for-each循环)
这是因为这些基本数据类型都可以被自动装箱为对应的包装类(Byte、Short、Integer、Long、Float、Boolean、Double和Character),而包装类实现了Iterable接口,因此可以使用增强for循环遍历它们。总结起来,可以使用增强for循环遍历的基本数据类型数组为:byte[]、short[]、int[]、long[]、float[]、double[]、char[]、boolean[]。这样可以使代码更简洁、可读性更高,并且不需要手动管理迭代器。原创 2024-05-08 10:31:32 · 403 阅读 · 0 评论 -
继承与实现
子类可以使用父类的属性和方法,同时还可以添加自己的属性和方法,或者覆盖父类的方法。公共成员(public)可以在继承类中直接访问,私有成员(private)只能在抽象类内部访问,不能在继承类中直接访问,受保护成员(protected)可以在抽象类内部和继承类中访问。需要注意的是,继承类可以根据需要覆盖(重写)继承的方法,以提供自己的实现。此外,继承类也可以添加新的属性和方法,以扩展抽象类的功能。继承类可以通过调用父类的构造函数来初始化继承的属性,也可以通过调用父类的方法来访问和操作继承的方法和属性。原创 2024-05-03 15:25:14 · 276 阅读 · 0 评论 -
详解封装,继承,多态
在上面的示例中,Animal类定义了一个makeSound()方法,在子类Dog和Cat中进行了重写。:是把构成问题的事务分解成各个对象,而建立对象的目的也不是为了完成一个个步骤,而是为了描述某个事物在解决整个问题的过程中所发生的行为。在上面的示例中,name和age属性被声明为私有(private),只能通过公共的getter和setter方法来访问和修改。在上面的示例中,Dog类继承了Animal类,通过super关键字调用父类的构造方法。的特性,所以易维护、易复用、易扩展。可以设计出低耦合的系统。原创 2024-04-30 16:50:58 · 531 阅读 · 0 评论 -
JUC小记
是一种相对于强引用弱化了的一种引用,对于只有软引用的对象而言,当系统内存充足时,不会被回收,当系统内存不足时,会被回收。:也叫做递归锁,指的是线程可以再次获取自己的内部锁,比如一个线程获取到了对象锁,此时这个对象锁还没有释放,当其想再次获取这个对象锁的时候还是可以获取的,如果不可重入的话,会导致死锁。乐观锁,悲观锁,自旋锁,公平锁,非公平锁,可重入锁,读写锁,共享锁,独占锁,偏向锁,轻量级锁,重量级锁,分段锁,互斥锁,同步锁,死锁......等。锁被释放以后,先申请的线程先得到锁。对象头存储那些信息?原创 2024-03-07 16:19:27 · 1023 阅读 · 0 评论 -
可重入锁-隐式锁与显式锁
ReentrantLock和synchronized作为可重入锁在功能上是比较相似的,但是ReentrantLock在加锁和释放锁的时候一定要通过try-finally 的方式来操作,防止在加锁之后程序异常退出没有调用lock.unlock() 方法释放锁。近日总结:持续低烧一天半了......原创 2024-03-03 16:31:08 · 350 阅读 · 0 评论 -
对象锁与类锁
通过上面代码中可以看到,在test1里修饰的是静态方法,即锁定的为当前的类对象,即类锁,而test2锁定的SyncTest1.class,也是类锁,也就是thread1和thread2请求的是同一把锁,所以是Thread1运行完之后Thread2才运行。通过上面代码中可以看到,在test1里修饰的是静态方法,即锁定的为当前的类对象,即类锁,而test2锁定的非静态方法,也就是对象锁,也就是thread1和thread2请求的不是同一把锁,所以他们是两个锁,互不影响。原创 2024-03-02 11:25:01 · 376 阅读 · 0 评论 -
java小记(2)
运行时异常:一般由程序逻辑错误引起的,但是java编译器不会检查它,也就是说,当程序中可能出现这类异常,即使没有用try-catch语句捕获它,也没有用throws子句声明抛出它,也会编译通过。:关键字,与Java中的public,private等关键字一样,都属于修饰符关键字,可以用来修饰属性、方法以及类,但是default一般用来。在编译时java泛型中所制定的类型会被去除,java泛型只能做到编译期检查的功能,运行期不能保证安全。非运行时异常:如果不处理,程序就不能编译通过。:类的父子继承关系。原创 2024-03-01 17:24:01 · 570 阅读 · 0 评论 -
java小记(1)
字符串String,由一个个字符char组成,String不是数组,但是char类型的数组,String不是基本类型,是引用类型,是类,是final类,不可继承,数组也是类。对于基本类型,==判断两个值是否相等,基本类型没有equals()方法,对于引用类型,==判断两个变量是否引用同一个对象,而equals()判断引用的对象是否等价。重载:指在同一个类中,一个方法与已经存在的方法名称相同,但是参数类型,个数,顺序至少有一个不同,而且有一点,返回值不同,其他相同,不算是重载。equals()与==原创 2024-02-27 17:42:22 · 1083 阅读 · 0 评论 -
使用Arrays.asList与不使用的区别
Arrays.asList()就是一个将数组转为集合的方法,但是使用这个方法得到的list集合却不能进行添加和删除操作。在写算法的时候,遇到了有的题解使用的是Arrays.asList,也有的是直接新建一个List集合将元素加进去的。通过上面的算法测试可以看到,Arrays.asList()方法所用时长明显比新建一个list集合所花费时间更长。如果是想要这些操作的话,还是得去新建list。看了一下算法的时间,两者居然相差了9秒。原创 2023-11-21 17:43:07 · 821 阅读 · 1 评论 -
idea所有历史版本下载
我idea嘎了,最新版的一直在闪退,于是我就在网上找idea的历史版本下载,结果都不太如意。原创 2023-09-07 11:08:37 · 649 阅读 · 0 评论 -
java中的&,>>,<<位运算
总结:好久没有总结了,最近在看java源码和算法,将java源码看完之后就会开新语言了,而且,我也马上就可以回家了,在学校呆了这么久,虽然说有人陪着,但还是家里面更香一点,还可以在家里尽情的发疯,不像在学校,只能在一个人面前发疯。二进制:在数学和数字电路中指以2为基数的记数系统,以2为基数代表系统是二进位制的,这一系统中,通常用两个不同的符号0(代表零)和1(代表一)来表示,数字电子电路中,逻辑门的实现直接应用了二进制。同理,&也是直接对二进制数进行比较,两位全为1,结果为1,否则为0。原创 2023-08-09 11:00:05 · 128 阅读 · 0 评论 -
集合转数组
但是通过toArray()不能直接将List对象转换为一般类型的数组。原创 2023-08-08 09:39:42 · 842 阅读 · 0 评论 -
Integer.bitCount()
n = 4294967293 (控制台输入 11111111111111111111111111111101,部分语言中 n = -3)编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 '1' 的个数(也被称为。n = 128 (控制台输入 00000000000000000000000010000000)Integer.bitCount(n)是可以直接将十进制转换为二进制,获取二进制中1的个数。中,共有 31 位为 '1'。中,共有一位为 '1'。原创 2023-08-07 20:35:46 · 297 阅读 · 0 评论 -
java实现qq自动发送无限条消息
在一次和对象的聊天中,我终于忍无可忍,找到了一个无限炸屏的代码。2.鼠标点击你的消息输入框。原创 2023-07-20 21:57:24 · 881 阅读 · 0 评论 -
请求方法+super+枚举+包装类+正则表达式+学习资料
get:获取查询数据(查询)post:数据的提交,新增操作(增加)put:向服务端发送数据、改变信息,侧重点在于对数据的修改操作delete:数据库数据的删除head:一般用来判断类型、根据返回状态确定资源是否存在、资源是否更新以及更新的时间等..................原创 2022-08-14 10:58:40 · 384 阅读 · 1 评论 -
java笔记
八种基本数据类型:基本数据类型如下:1、整数型:byte(字节型)、short(短整型)、int(整型)、long(长整型)。2、浮点型:float(单精度浮点)、double(双精度浮点).3、字符型:char(字符型)。4、布尔型:boolean(布尔型)。面向对象:java语言最吸引人之处,就在于它是一种以对象为中心,以消息为驱动的面向对象的编程语言。面向对象的编程语言都支持封装,继承,多态三个概念,java语言也是如此。抛出异常有三种形式:①系统自动抛出 ②throws ③thro原创 2022-03-26 09:57:45 · 100 阅读 · 0 评论 -
常用dos命令+关键字保留字+命名规范+基本数据类型+引用数据类型+基本数据类型转换+算术运算符需要注意的问题+以前笔记+部分运算符+方法重载+变量赋值+构造器的作用+package关键字
注意:在输入 dos 命令时,要是用英文输入,所有标点符号都是英文。Win+R,一起按下,输入 cmd,可以打开 dos 界面。Delete 和 Backspace:删除字符。dir : 列出当前目录下的文件以及文件夹。补充:echo javase>1.doc。常用的 DOS 命令(windows版)exit : 退出 dos 命令行。: 退回到上一级目录。↑↓:调阅历史操作命令。cd: 进入指定目录。cd: 退回到根目录。del : 删除文件。.....................原创 2022-08-18 18:18:44 · 659 阅读 · 2 评论 -
泛型+IO流基础知识+java->符号 lambda表达式
Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。个人总结:最近一段时间都在家里,因为我们这儿时高风险地区,看着其他孩子都去了学校,心里也是非常的难过,2、解决获取数据元素时,需要类型强制转换的问题,好比不用每回拿商品、药品都要辨别。经过上网查询得知,Lambda是java1.8之后新加入的,相当于无名称的函数.泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。:相较于某个路径下,指明的路径。.原创 2022-09-02 00:00:00 · 137 阅读 · 0 评论 -
IO+集合+泛型实现僵尸查询系统
昨天进行了小组考核,下面是我做的僵尸查询系统,这个查询系统具有增删改查,登录注册功能,用IO,集合和泛型实现,其中也有很多不足,欢迎大家在下面评论区指出,每一个评论我都会认真对待的。下面是我做的僵尸查询系统还有就是我用的相对路径,大家根据自己的路径来就好。import java.io.*;import java.util.ArrayList;import java.util.Scanner;/* 名称 外形或特征 等级 紫僵 淡紫 一 白僵原创 2022-01-19 11:19:15 · 260 阅读 · 1 评论 -
Arrays.fill(),Arrays.equals(),http的请求方式
Arrays.fill()方法:要填充的数组:fromIndex - 要使用指定值填充的第一个元素的索引(包括)toIndex - 要使用指定值填充的最后一个元素的索引(不包括)Arrays.fill(a,0,5,2);填充的元素是2,填充的范围是从数组下标为0开始到4,不包括数组下标为5.int []a=new int[6];Arrays.fill(a,0,5,2);输出数组为2,2,2,2,2,0Arrays.equals(a,b):对两...原创 2022-05-15 10:48:36 · 219 阅读 · 0 评论 -
io实现登录注册功能+本周总结
这周快结束了,嗯,今天周日。学习篇小组布置了考核任务,用io做一个系统,我就做了一个僵尸查询系统,不仅仅是为了完成考核任务,也是怀念我的童年,怀念以前的僵尸电影,怀念英叔。系统我用了集合和文件,从集合到文件,从文件到集合,敲代码的过程中也遇到了很多困难,有时候改bug一改就改一下午,也很无奈,最后实在改不了的就向学长寻求帮助,最后系统还是做好了,虽然有十几个警告。。。但能运行( ̄▽ ̄)/生活篇我发现在家里认真学习学习效率还挺高的下面是我用io实现登录注册功能,其中有一些地方写的不太好的地方原创 2022-01-16 15:17:24 · 262 阅读 · 5 评论 -
子类继承父类+Object类中的主要结构+Object类中toString()的使用+关键字final+String的常用方法+String StringBuffe+java中的日期时间
3. 像 String、Date、File、包装类等都重写了 Object 类中的 toString() 方 法。对于实例变量则不存在这样的现象,即使子类里定义了与父类完全相同的实例变量,这个实例变量依然不可能覆盖父类中定义的实例变量。若子类重写了父类方法,就意味着子类里定义的方法彻底覆盖了父类里的同名方法,系统将不可能把父类里的方法转移到子类中。4. 自定义类如果重写 toString() 方法,当调用此方法时,返回对象的 "实体内容 "。我下面写的知识点都有点碎,还请见谅。.........原创 2022-08-25 22:59:47 · 702 阅读 · 0 评论 -
java碎碎碎碎碎碎
效率 :是一个集合接口。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式。原创 2022-09-09 20:55:33 · 312 阅读 · 0 评论 -
数据结构+java基础(1)+进制之间的转换
逻辑结构分类: 1.集合结构:集合结构中数据元素除了属于同一个集合外,他们之间没有任何其他的关系。2.线性结构:线性结构中的数据元素之间存在一对一的关系。原创 2022-08-13 22:10:08 · 410 阅读 · 0 评论