
JavaSE
文章平均质量分 85
基础语法谁学不会啊
大王雨辰
路虽远,行则将至;
事虽难,做则必成.
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[Java基础]日志技术
日志就是程序运行的详细记录希望系统能记住某些数据是被谁操作的,比如被谁删除了?想分析用户浏览系统的具体情况,以便挖掘用户的具体喜好?当系统在开发中或者上线后出现了bug,崩溃了,该通过什么去分析、定位bug?程序中的日志,通常就是一个文件,里面记录的是程序运行过程中的各种信息输出语句日志会展示在控制台不能更方便的将日志记录到其他的位置(文件,数据库)想取消日志,需要修改源代码才可以完成日志技术可以将系统执行的信息,方便的记录到指定的位置(控制台、文件中、数据库中)原创 2025-03-03 11:44:27 · 981 阅读 · 0 评论 -
[Java基础]注解技术
注解就是Java代码里的特殊标记,比如: @Override、@Test等。作用是让其他程序根据注解信息来决定怎么执行该程序注解可以用在类上、构造器上、方法上、成员变量上、参数上、等位置处。自定义注解的语法@MyBook(name = "赵丽丽", age = 20, address = {"北京", "上海"})@MyValue("delete") // 完整写法: @MyValue(value="delete")原创 2025-02-28 14:59:48 · 482 阅读 · 0 评论 -
[Java基础]反射技术
需求: 对于任意一个对象,该框架都可以把对象的字段名和对应的值,保存到文件中去。反射就是拿到类文件, 然后操作类的成分(成员变量, 方法, 构造器等)反射第一步: 加载类,获取类的字节码 (Class对象)通过加载类文件, 获取类的成分信息, 操作他们。获取类的构造器: Constructor对象。Class提供了从类中获取成员方法的API。Class提供了从类中获取成员变量的方法。Class提供了从类中获取构造器的方法。获取类的成员方法: Method对象。获取类的成员变量: Field对象。原创 2025-02-26 09:27:14 · 469 阅读 · 0 评论 -
[Java基础]单元测试
需求: 某个系统,有多个业务方法,请使用Junit单元测试框架,编写测试代码,完成对这些方法的正确性测试。Junit单元测试框架的常用注解(Junit 4.xxxx版本)Junit单元测试框架的常用注解(Junit 5.xxxx版本)用来对方法进行测试, 第三方公司开源的, 已经集成在IDEA中。针对最小的功能单元(方法), 编写测试代码对其进行正确性测试。原创 2025-02-24 09:50:14 · 975 阅读 · 0 评论 -
[Java基础]网络编程
可以让设备中的程序与网络上其他设备中的程序进行数据交互的技术(实现网络通信)。网络通信架构CS架构: Client客户端 / Server服务端客户端需要程序员开发,需要用户安装服务端需要程序员开发BS架构: Browser浏览器 / Server服务端用户下载安装浏览器就行服务器需要程序员开发无论是CS架构,还是BS架构的软件都必须依赖网络编程!java.net.*包下提供了网络编程的解决方案。原创 2025-02-21 09:35:04 · 1177 阅读 · 0 评论 -
[Java基础]多线程
用户每发起一个请求,后台就需要创建一个新线程来处理,下次新任务来了肯定又要创建新线程处理的,创建新线程的开销是很大的,并且请求过多时,肯定会产生大量的线程出来,这样会严重影响系统的性能。对于IO密集型任务(如网络请求、磁盘读写等),线程可能大部分时问都在等待IO操作完成,此时可以设置更多的线程来充分利用CPU等待的时间,一般为系统可用处理器数量 * 2。需求: 3个生产者线程,负责生产包子,每个线程每次只能生产1个包子放在桌子上, 2个消费者线程负责吃包子,每人每次只能从桌子上拿1个包子吃。原创 2025-02-19 14:51:32 · 592 阅读 · 0 评论 -
[Java基础]IO流
任何文件的底层都是字节,字节流做复制就是一字不漏的转移完全部字节,只要复制后、的文件格式一致就没问题!字节流: 适合操作所有类型的文件, 特别适合数据的迁移, 如文件复制, 不适合读取文本。字符输出流写出数据后, 必须刷新流, 或者关闭流, 写出的数据才能生效。分别使用原始的字节流,以及字节缓冲流复制一个很大的视频, 测试性能。以内存为基准, 把磁盘文件中的数据以字节的形式读取到内存中。以内存为基准, 可以把文件中的数据以字符的形式读取到内存中。创建缓冲流, 然后包装字节流, 字节的读写性能得到提升。原创 2025-02-17 10:32:14 · 1280 阅读 · 0 评论 -
[Java基础]File文件
这些数据容器都在内存中,一旦程序结束,或者断电,数据就没有了文件在电脑磁盘中保存,即便断电,或者程序终止,文件中的数据也不会丢失。原创 2025-02-15 10:01:39 · 552 阅读 · 0 评论 -
[Java基础]集合体系
集合是一种容器, 用来装数据, 类似于数组, 但是集合的大小是可变的, 开发中非常常用, 为了满足不同的业务场景, Java提供了很多不同特点的集合供我们选择按照特点, 集合可以分为Collection单列集合 和 Map双列集合collection代表单列集合, 每个元素只包含一个值, 可以理解为数组Map代表双列集合, 每个元素包含两个值(键值对), 可以理解为对象HashSet集合默认不能对内容一样的两个不同对象去重复。原创 2025-02-14 10:12:43 · 1173 阅读 · 0 评论 -
[Java基础]精通异常体系
企业中遇到的个性化的问题, 通过自定义异常进行管理示例自定义编译时异常/*** 自定义编译时异常* 1.继承 Exception* 2.重写Exception的构造方法* 3.哪里需要哪里抛出这个异常*/// 了解自定义异常// 1.自定义编译时异常, 编译时异常需要立刻处理try {// 公司的系统只要收到了小于1大于200的年龄就抛出年龄非法异常// 创建一个异常对象。原创 2025-02-12 09:47:11 · 647 阅读 · 0 评论 -
[Java基础]GUI编程
每个区域只能添加一个组件,未添加组件的区域保持空白。布局管理器(Layout Manager)它们可以决定组件在容器中的布局方式,避免了手动设置每个组件的位置和大小,从而简化了GUI设计过程。AWT(Abstract Window Toolkit ): 提供了一组原生的GUI组件,依赖于操作系统的本地窗口系统。FlowLayout 是最简单的布局管理器,它按水平方向从左到右排列组件,当一行排满时,自动换到下一行。Swing: 基于AWT,提供了更丰富的GUI组件,轻量级组件,不依赖于本地窗口系统。原创 2025-02-10 09:55:25 · 1056 阅读 · 0 评论 -
[Java基础]常用API
Object类是java中所有类的祖宗类,因此, java中所有类的对象都可以直接使用Object类中提供的一些方法。StringBuilder是可变字符串对象, 相当于一个容器, 里面装的字符串是可变的, 专门用来操作字符串的。JSK8开始支持的, 跟StringBuilder一样, 是操作字符串用的, 在拼接字符串场景下, 代码更简洁。Duration(持续时间), 可以计算两个时间对象相差的天数, 小时数, 分数, 秒数, 纳秒数,通过它可以单独获取、修改时间中的年、月、日、时、分、秒等。原创 2025-02-07 18:07:05 · 850 阅读 · 0 评论 -
[Java基础]函数式编程
如果某个Lambda表达式里只是调用一个特定类型的实例方法, 并且前面参数列表中的第一个参数作为方法的主调, 后面的所有参数都是作为该实例方法的入参, 此时可以使用特定类型的方法引用。如果某个Lambda表达式里只是调用一个静态方法, 并且 "->"前后参数的形式一致, 就可以使用静态方法引用。如果某个Lambda表达式里只是调用一个实例方法, 并且"->"前后参数的形式一致, 就可以使用实例方法引用。如果某个Lambda表达式里只是在创建对象, 并且"->"前后参数情况一致, 就可以使用构造器引用。原创 2025-02-05 09:48:52 · 1123 阅读 · 0 评论 -
[Java基础]面向对象
/ 模拟ArrayList集合@Override// 使用泛型// true如果需要, 可以进一步使用extends限制泛型的范围表示类型E必须是Animal类型或者是Animal的子类类型变量建议用大写的英文字母,常用的有:E、T、K、V等// 学生类// 老师类// 自定义泛型接口// 数据操作接口// 学生操作实现类@Override@Override@Override@Override// 老师操作实现类。原创 2025-02-03 09:53:12 · 1519 阅读 · 0 评论 -
[Java基础]开发工具Idea
IDE: 称为集成开发环境, 把代码编写,编译,执行等功能综合在一起的工具。修改类名称: 类文件 ->右键- >Refactor/Rename。修改模块名: 模块->右键->Refactor/Rename。新建模块->复制目标模块src下的代码->粘贴到新建的模块中。关闭idea: file -> Exit 或者 叉掉idea。控制面板->卸载程序->卸载->勾选清空配置->确认卸载。打开工程: file-> open ->选中工程文件。删除: 类文件 ->右键 ->delete。点击+号选择异常断点。原创 2025-02-01 16:11:04 · 2069 阅读 · 0 评论 -
[Java基础]核心语法
*** 掌握变量的使用*/// 变量的声明和使用// 变量的声明// 变量的使用// 使用变量的优势// 提高代码的灵活性和可维护性// 变量的特点// 变量中的数据可以被替换age2 = 19;// 变量赋值 (从右往左看)//19// 案例: 红包余额// 1. 定义变量System.out.println("余额为:" + balance);// 2. 模拟消费System.out.println("余额为:" + balance);原创 2025-01-30 15:16:42 · 1298 阅读 · 0 评论 -
[Java基础]快速入门
使用命令行打开程序, 命令行工具会在当前目录查找程序的可行性文件, 如果找不到, 就会到系统的Path变量中查找程序所在目录。java的产品叫JDK(Java Development Kit:Java开发者工具包),必须安装JDK才能使用Java。使用命令行打开程序, 要么在程序所在目录执行命令,要么配置环境变量, 环境变量的作用就是记住程序所在目录。跨平台的原理: java提供了不同平台的JVM虚拟机, 同一套代码, 可以运行在不同操作系统中。新建文本文档, 修改文件后缀为.java,原创 2025-01-27 09:55:16 · 1206 阅读 · 0 评论 -
[java]高级技术
比如要解析成员方法上的注解, 就应该获取该成员方法的Method对象, 再通过method对象解析其上面的注解。比如要解析类上面的注解, 就应该先获取该类的class对象, 在通过class对象解析其上面的注解。@注解(,..)其实就是一个实现类对象, 实现了该注解以及Annotation接口。如果注解中只有一个value属性, 使用该注解时, value的名称可以不写。并为每个业务方法, 编写对应的测试方法(公共, 无参, 无返回值)无法实现自动化测试, 一个方法测试失败, 会影响其他方法的测试。原创 2024-12-18 09:33:29 · 638 阅读 · 0 评论 -
[java]网络编程
周知端口: 0-1023, 被预先定义的知名应用占用(HTTP占用80, FTP占用21)调用ServerSocket对象的方法,等待客户端的连接,并获得Socket管道对象。我们开发的程序一般选择注册端口, 一个设备中不能出现端口一样的程序, 否则报错。客户端向服务端发送确定信息, 建立连接,服务端确定客户端接受无问题。原理: 不事先建立连接, 数据按照包发送, 只管发出,其他不管。通过Socket对象的方法得到字节输入流, 完成数据的接受。创建客户端的Scoket对象, 请求与服务端的连接。原创 2024-12-16 09:29:23 · 1224 阅读 · 0 评论 -
[java]多线程
新任务提交时发现核心线程都在忙, 任务队列也满了, 并且还可以创建临时线程, 此时才会创建临时线程。多个线程共同操作共享资源时, 线程间通过改变自己的状态, 相互协作, 避免无效的资源争夺。悲观锁: 一上来就加锁, 没有安全感, 每次只能一个线程进入,访问完毕后再解锁,加锁: ,每次只允许一个线程加锁, 加锁后才能访问资源, 访问完成后自动解锁。核心线程和临时线程都在忙,任务队列也满了, 新的任务过来的时候才会拒绝任务。线程任务对象是任务对象, 实现了Runnable对象, 可以交给线程对象。原创 2024-12-14 09:26:13 · 966 阅读 · 0 评论 -
[java]日志技术
把 slf4-api日志接口文件 logback-core文件 logback-classic文件 复制到lib文件夹中。logback-core 模块 -> 基础模块.其他模块的依赖项目(必须的)logback-classic 模块 -> API实现I模块 (必须的)Commons Logging (JCL) 接口 -> 较老的日志接口。logback-access 模块 -> 网络访问日志模块(可选)LOGGER.info() -> 记录程序的执行结果。已经实现好的记录日志的代码, 方便直接使用。原创 2024-12-12 09:27:36 · 621 阅读 · 0 评论 -
[java]IO流
原始流的字节数组, 越大性能越好, 但是大到一定程度,提升就很小了,需用通过调试,找到字节数组的最佳值。补充: 如果需要序列化多个对象, 可以用法ArrayList集合存放对象, 然后操作集合即可,硬盘的容量很大, 内存的容量很小, 如果文件很大, 可能会引起内存溢出的问题。可变长编码方案, 分4个长度区: 1个字节, 2个字节,3个字节,4个字节。定义与文件一样大小的字节数组, 一次性读取文件的全部字节, 避免汉字乱码。fw.flush();特殊情况下,可以通过调整原始流的字节数组,提高原始流的性能,原创 2024-12-10 09:22:43 · 1066 阅读 · 0 评论 -
[java]File文件对象
当主调是一个文件夹, 且里面有隐藏文件时, 将里面所有的文件和文件夹的路径放在file数组中返回, 包含隐藏文件。File类是java.io包下的类, File类的对象,用于操作当前系统的文件或文件夹。当主调是一个有内容的文件夹时, 将里面所有一级文件和文件夹的路径放在file数组中返回。delete方法只能删除文件和空文件夹, 删除后的文件会被粉碎, 不会进入回收站。File f3 = new File("不存在的文件路径")// 文件不存在false。当主调是文件, 或者路径不存在时, 返回null。原创 2024-12-09 12:35:15 · 648 阅读 · 0 评论 -
[java]集合
集合是一种容器, 用来装数据, 类似于数组, 但是集合的大小是可变的, 开发中非常常用, 为了满足不同的业务场景, Java提供了很多不同特点的集合供我们选择按照特点, 集合可以分为Collection单列集合 和 Map双列集合collection代表单列集合, 每个元素只包含一个值, 可以理解为数组Map代表双列集合, 每个元素包含两个值(键值对), 可以理解为对象。原创 2024-12-07 09:26:47 · 808 阅读 · 0 评论 -
[java]常用API
企业中遇到的个性化的问题, 通过自定义异常进行管理重写构造器可以通过 右键/Generate/Constructor快速生成throw的作用就是抛出异常对象throws用在方法上, 抛出方法内部的异常示例需要强烈提醒的错误用编译时异常问题不太容易出现时使用运行时异常。原创 2024-12-05 09:46:05 · 1070 阅读 · 0 评论 -
[java]面向对象,从浅到深
/ 成员变量(默认就是常量)String SCHOOL_NAME = "程序员";// 成员方法(默认就是抽象方法)JDK8之前的接口中只能有抽象方法和常量接口中的成员都是public修饰的, 写不写都是接口方法默认被public修饰的原因: 接口是需要被类实现的, 大部分接口方法都是要对外暴漏的接口不能实例化// 模拟ArrayList集合// 模拟add方法// 模拟get方法// 使用泛型如果需要, 可以进一步使用extends限制泛型的范围。原创 2024-08-04 09:18:47 · 1333 阅读 · 0 评论 -
[java]基础语法
变量的优势便于数据的扩展和维护一次定义,多处使用,统一操作变量的特点变量的数据可以被替换注意事项先声明再使用变量定义的类型要和数据的类型一致变量的有效范围是从定义开始到 "}" 结束定义变量的时候可以不赋值, 但是使用的时候必须有值, 不然报错补充说明方法的修饰符: 暂时都使用public static修饰如果方法声明了返回值类型, 就必须通过return返回对应的数据如果方法没有返回值, 可以声明成void, 就无需使用return返回数据了。原创 2024-07-29 08:57:29 · 2422 阅读 · 0 评论 -
[java]快速入门
编译工具: javac.exe是内置的编译工具, 我们编写的java程序属于高级语言, 计算机不能直接识别, 需要通过编译工具, 把高级语言转译为机器语言。执行工具: java.exe是内置的执行工具, 经过编译的java程序, 由执行工具执行, 驱动计算机工作。使用命令行打开程序, 要么在程序所在目录执行命令,要么配置环境变量, 环境变量的作用就是记住程序所在目录。IDE: 称为集成开发环境, 把代码编写,编译,执行等功能综合在一起的工具。java SE: 标准版, java技术的核心和基础。原创 2024-07-16 08:53:08 · 1422 阅读 · 0 评论