随笔分类 - JAVA
摘要:
阅读全文
摘要:场景一: Gson和Jackson的转换
阅读全文
摘要:位于网络中的计算机具有唯一的IP地址,这样不同的主机可以互相区分。 客户端-服务器是一种最常见的网络应用程序模型。服务器是一个为其客户端提供某种特定 服务的硬件或软件。客户机是一个用户应用程序,用于访问某台服务器提供的服务。端口号 是对一个服务的访问场所,它用于区分同一物理计算机上的多个服务。套接字
阅读全文
摘要:一、logback简介 官网:https://logback.qos.ch/ Logback 继承自 log4j,springboot默认使用的日志框架是logback,它由三个模块组成: logback-core:是其它模块的基础设施,其它模块基于它构建; logback-classic:它的地位
阅读全文
摘要:一、Optional 简介 二、Optional 类描述 三、Optional 常用方法及使用示例 1.静态方法 Optional.of() 2.静态方法 Optional.ofNullable() 3.对象方法 isPresent() 4.对象方法 get() 5.对象方法 ifPresent()
阅读全文
摘要:一、什么是Stream 关于Java8 Stream的描述正确的是 (A) A. Stream跟迭代器类似,再次遍历需要重新生成 B. Stream执行方式跟之前代码处理方式类似,中间操作立即执行 C. 对Stream修改体现到数据源上 D. Stream数据源只能是数组、容器或I/O 解析: St
阅读全文
摘要:一、什么是JDBC? 1.数据的持久化 持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以“固话”,而持久化的实现过程大多通过各种关系数据库来完成。 持久化的主要应用是将内存中的数据库存储在关系
阅读全文
摘要:一、Java8新特性 1.新特性简介 速度更快 代码更少(增加了Lambda表达式) 强大的 Stream API 便于并行 最大化减少空指针异常 Optional Nashorn引擎,允许在JVM上允许JS应用 2.并行流与串行流 并行流:就是把一个内容分成几个数据块,并用不同的线程分别处理每个数
阅读全文
摘要:一、简介 1.IO和NIO的对比 (1)IO是面向流的,NIO是面向缓冲区的 Java IO面向流意味着每次从流中读一个或多个字节,直至读取所有字节,它们没有被缓存在任何地方; NIO则能前后移动流中的数据,因为是面向缓冲区的 (2)IO流是阻塞的,NIO流是不阻塞的 Java IO的各种流是阻塞的
阅读全文
摘要:一、java.io.File类的使用 java.io.File类:文件和文件目录路径的抽象表示形式,与平台无关 File 能新建、删除、重命名文件和目录,但File 不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。 想要在Java程序中表示一个真实存在的文件或目录,那么必须有
阅读全文
摘要:一、泛型 1.为什么要有泛型? 解决元素存储的安全性问题 解决获取数据元素时,需要类型强转的问题。 Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生 ClassCastException异常。同时,代码更加简洁、健壮。 2.怎么使用泛型? 2.1 集合中使用泛型 集合接口或集合类在
阅读全文
摘要:一、Java中异常的分类 当执行一个程序时,如果发现异常,则异常之后的代码就不再执行。Throwable 类是 Java 语言中所有错误或异常的超类,其子类有Exception和Error。JDK文档有这么一句话:只有当对象是此类(或其子类之一)的实例时,才能通过 Java 虚拟机或者 Java t
阅读全文
摘要:1.Collections 2.Enumeration(了解) Enumeration接口是Iterator迭代器的“古老版本”。与Enumeration相比,Iterator更加安全,因为当一个集合正在被遍历的时候,它会阻止其他线程取修改集合。 区别: Iterator的⽅法名比Enumerati
阅读全文
摘要:一、Map集合 Map与Collection并列存在,用于保存具有映射关系的数据; Map中的key和value都可以是任何引用类型的数据; Map中的key用Set来存放,不允许重复,即同一个Map对象所对应的类,须重写hashCode()和equals()方法; value是可以重复的,使用Co
阅读全文
摘要:一、Collection介绍 Java集合可分为Collection和Map两种体系: Collection接口: Set:元素无序、不可重复的集合; List:元素有序,可重复的集合; Map接口:具有映射关系“key-value”的集合 1. 为什么需要Collection? Java是⼀⻔⾯向
阅读全文
摘要:一、字符串相关类 1.String类 1.1 字符串的特性 String是一个final类不可被继承,代表不可变的字符序列,底层使用char[]存放; 字符串是不可变的。一个字符串对象一旦被配置,其内容是不可变的。 字符串使用Unicode字符编码,一个字符占两个字节 1.2 字符串比较 Strin
阅读全文
摘要:一、Object类 java.lang.Object类,是所有类的根父类 1.== 和equals的比较 ==: 基本数据类型:根据基本数据类型的值判断是否相等,相等返回true,反之返回false 注:两端数据类型可以不同,在不同的情况下,也可以返回true。 引用数据类型:比较类型变量的地址值是
阅读全文
摘要:一、反射机制 1.概述 Reflection(反射)允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。 加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我
阅读全文
摘要:一、thread.join 1.方法介绍 join():正在执行的线程需要等待调用join()的线程执行完之后,才可以继续执行。 2.使用场景 两个线程依次执行; 三个线程依次执行(需要加boolean变量控制顺序)(Leetcode 1114) /** * 功能描述:顺序执行步骤1,2,3 * @
阅读全文
摘要:一、Java线程与系统内核线程 Java虚拟机使用的是KLT线程模型。Java线程创建依赖于系统内核,通过JVM调用系统库创建内核线程,内核线程与Java-Thread是1:1的映射关系。 并发:CPU在多个线程之间来回切换调度。 并行:多核CPU同时处理多个线程。 二、线程池 线程是稀缺资源,它的
阅读全文