随笔分类 - Java语言学习笔记
在B站学的,记录成长过程,方便日后复习
摘要:温馨提示:由于图片中内容较多,字节很小,选中图片右键选择 ”在新标签页中打开图片“,在新的页面中可放大查看~ 步骤:单元测试的快速入门 需求:使用单元测试进行业务方法预期结果、正确性测试的快速入门 分析: 将JUnit的jar包导入到项目中 IDEA通常整合好了JUnit框架,一般不需要导入 如果I
阅读全文
摘要:初识XML文件: XML文档约束之DTD文档约束: XML文档约束之schema约束: XML文档解析:Dom4J: dom4j的jar包下载: 使用Dom4J把一个XML文件的数据进行解析: 官网下载Dom4J框架 在项目中新建一个文件夹:lib 将dom4j - 2.1.1.jar文件复制到li
阅读全文
摘要:步骤:客户端发送数据 需求: 客户端实现步骤: 创建客户端的Soecket对象,请求与服务端的连接 使用Socket对象调用getOutputStream( )方法得到字节输出流 使用字节输出流完成数据的发送 释放资源:关闭socket管道 服务端实现步骤: 创建ServerSocket对象,注册服
阅读全文
摘要:端口号 1 import java.net.InetAddress; 2 3 public class InetAddressDemo { 4 public static void main(String[] args) throws Exception{ 5 InetAddress localHo
阅读全文
摘要:线程通信 案例:加入有一个场景,小明、和小红有3个爸爸,爸爸们负责存钱,小明和小红负责取钱,必须一存、一取。 线程通信的前提:线程通信通常是在多个线程操作同一个共享资源的时候需要进行通信,且要保证线程安全。 1 public class Account { 2 private String card
阅读全文
摘要:多线程的三种创建方式: 继承Thread类; 实现Runnab接口; JDK5.0新增:实现Callable接口 方式一:继承Thread类 1 //1、定义MyThread类继承自Thread类 2 public class MyThread extends Thread{ 3 //2、重写run
阅读全文
摘要:缓冲流 1 import java.io.*; 2 3 //使用字节缓冲流完成数据的读写操作 4 public class ByteBufferDemo { 5 public static void main(String[] args) throws Exception{ 6 try( 7 //这
阅读全文
摘要:字符集: 1 import java.util.Arrays; 2 3 public class Test { 4 public static void main(String[] args) throws Exception { 5 //1、编码:把文字转换成指定的字节 6 String name
阅读全文
摘要:1 import java.io.File; 2 3 public class FileDemo { 4 public static void main(String[] args) { 5 //1、创建File对象(指定文件的路径) 6 //路径写法1、 7 //File f = new File
阅读全文
摘要:递归:方法直接或者间接调用自己的形式 递归案例导学:使用递归计算1~n的阶乘; f(n) = 1*2*3*4*5*...*n ; f(n) = f(n-1) * f(n); 1 public class RecursionDemo2 { 2 public static void main(Strin
阅读全文
摘要:步骤一、 集成日志框架、用于后期记录日志信息; 定义一个电影类,Movie类包含:片名、主演、评分、时长、票价、余票; 系统包含2种角色类型:商家、客户,存在大量相同属性信息; 定义User类作为父类,属性:登录名称、密码、真实名称、性别、电话、账户金额; 定义Business类代表客户角色,继承U
阅读全文
摘要:Logback快速入门: 需求:导入Logback日志技术到项目中,用于记录系统的日志信息 第一步:在项目下新建文件夹,导入Logback的相关jar包到改文件夹下,并添加到项目依赖库中。 在模块位置右键new一个directory,命名为lib,将相关jar包拷贝到lib下: 添加到依赖库: 出现
阅读全文
摘要:logback-core下载(点击下方链接即可跳转): https://logback.qos.ch/download.html 点击选择对应的模块: 选择对应的版本:(本篇以1.2.3版本为例子) 选择对应的jar包并保存到本地即可: 由于logback-classic的下载过程与logback-
阅读全文
摘要:运行时异常【RuntimeException】 1、数组索引越界异常【ArrayIndexOutOfBoundsException】 2、空指针异常【NullPointerException】 从源码中也可以看到,运行时的异常继承自RuntimeExcetion 3、类型转换异常【ClassCast
阅读全文
摘要:在学习Stream流体系知识的时候遇到了这个问题,示例代码如下: 1 import java.util.ArrayList; 2 import java.util.Collections; 3 import java.util.List; 4 import java.util.stream.Stre
阅读全文
摘要:1 import java.util.List; 2 import java.util.Map; 3 import java.util.Set; 4 5 public class UnchangeCollectionDemo { 6 //对不可变集合进行增删修改操作时均会抛出异常:Unsupport
阅读全文
摘要:Map集合实现类的特点: HashMap:元素按照键是无序、不重复、无索引,值不做要求(与Map体系一致); 示例运行结果: LinkedHashMap:元素按照键是有序、不重复、无索引,值不做要求 由于上边的HashMap集合是采用多态的方式写的,因此此处我们仅需修改一处代码即可实现LinkedH
阅读全文
摘要:可变参数: 1 public class MethodDemo { 2 public static void main(String[] args) { 3 sum();//不传参数 4 sum(5); //一个参数 5 sum(1,2,3); //多个参数 6 sum(new int[]{5,6,
阅读全文
摘要:HashSet、LinkedHashSet 1 public static void main(String[] args) { 2 //Set系列集合:HashSet、LinkedHashSet、TreeSet 3 //多态写法 4 //Set<String> sets = new HashSet
阅读全文
摘要:感受泛型的优点: 1、 红色框内的就是泛型,说的直白一点,上边的泛型就是集合的数据类型,它可以约束集合,因为Java作为一种强类型的语言,它希望在对数据操作之前就知道改数据属于何种类型,便于后续对这些数据的操作。比如,我们平时很少会去使用所有数据类型的父类:Object去定义一个变量或者集合,而是去
阅读全文