
Java
文章平均质量分 82
java知识点
全栈程序员
亦余心之所善兮
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
# 深入理解JavaIO流
都提供了可以指定缓冲区大小的构造函数。默认情况下,缓冲区大小是合适的,可以根据实际需求调整缓冲区大小。在网络编程中,客户端和服务器之间的数据交换需要明确指定编码,否则可能导致乱码。处理二进制数据时应优先考虑字节流,而处理文本数据时使用字符流会更加合适。以流的处理单位为维度主要有字节和字符两种方式。导入导出、后端文件解析等功能会经常使用。读取文件时候始终主动设置字符编码。流对日常开发很有帮助。原创 2025-03-24 10:00:00 · 831 阅读 · 0 评论 -
# Java 反射的使用
`Java`的反射(`reflection`)机制是指在程序的运行状态中,可以构造任意一个类的对象,可以了解任意一个对象所属的类,可以了解任意一个类的成员变量和方法,可以调用任意一个对象的属性和方法。这种动态获取程序信息以及动态调用对象的功能称为`Java`语言的反射机制。反射被视为动态语言的关键。原创 2022-09-21 08:48:58 · 1002 阅读 · 0 评论 -
# Java 常用代码片段
JDK中提供了一组实现延迟队列的API,位于包下DelayQueue。DelayQueue是一个(无界阻塞)队列,它本质就是封装了一个(优先队列),内部使用完全二叉堆(来实现队列元素排序,我们在向DelayQueue队列中添加元素时,会给元素一个Delay(延迟时间)作为排序条件,队列中最小的元素会优先放在队首。队列中的元素只有到了Delay时间才允许从队列中取出。......原创 2022-08-18 19:59:10 · 1072 阅读 · 0 评论 -
# JVM 参数及调优
JVM 参数及调优Java 常用命令Javac功能将Java源代码换成字节代码命令格式javac One.javaJavap功能javap是JDK自带的反编译器,可以查看编译器生成的字节码,用于分解class文件反编译编译产生.class文件命令格式javap -p -v JvmTest.classjavap -l:输出行号和本地变量表信息javap -c:会对当前class字节码进行反编译生成汇编代码Jmap功能生成快照文件查看对内对象的统计信息原创 2021-06-23 20:11:55 · 365 阅读 · 1 评论 -
# Java 进阶知识
Java 程序执行原理编写Java源文件,.java文件javac编译java源文件,编译生成.class的字节码文件JVM将字节码文件翻译为机器码(0,1)二进制Jvm 加载Class 文件jvm类加载见地址 https://blog.csdn.net/qq_37248504/article/details/106302662加载、连接(验证、准备、解析)、初始化加载:找到类对应class文件,读入到内存中。ClassLoader 双亲委托机制 当一个类加载的时候会先原创 2021-05-13 20:10:41 · 348 阅读 · 2 评论 -
# Java 8 新特性使用
Java 8 新特性使用Optional类Optional 类是一个可以为null的容器对象。如果值存在则isPresent()方法会返回true,调用get()方法会返回该对象。Optional 是个容器:它可以保存类型T的值,或者仅仅保存null。Optional提供很多有用的方法,这样我们就不用显式进行空值检测。Optional 类的引入很好的解决空指针异常。Optional类源码public final class Optional<T> { //原创 2021-02-27 15:33:21 · 440 阅读 · 2 评论 -
# Java 集合框架详情
Java 集合框架详情集合框架总览图Iterable接口Iterable接口是Java集合框架的顶级接口,实现此接口可以通过迭代器遍历自身元素。Java容器中,Collection继承Iterable接口。Iterable接口源码public interface Iterable<T> { // 创建一个类型为T的Iterator的实例 Iterator<T> iterator(); // 遍历操作集合内的元素 default void for原创 2021-02-02 21:36:26 · 880 阅读 · 2 评论 -
# Java中的IO
Java中的IOIO是指对数据流的输入和输出,IO流主要分为两大类,字节流、字符流。字节流可以处理任何类型的数据(图片、视频等),字符流只能处理字符类型的数据。IO分阻塞性IO和非阻塞性NIO概念和作用流是一组有顺序的有起点和终点的集合,是对数据传输的总称或者抽象。流的本质是数据传输。Java流类图结构流分类字符流和字节流字符流:在字节流读取时候,去查指定的码表。字节流以字节为单位,字符流以字符为单位。字节流可以处理任何类型的数据,字符流只能处理字符类型的数据。输原创 2021-01-04 22:07:51 · 973 阅读 · 0 评论 -
# JDK 中Concurrent包的基础知识
JDK 中Concurrent包的基础知识阻塞队列BlockingQueueBlockingQueue通过建立线程安全的队列,从而快速方便的设计高质量的多线程程序。BlockingQueue通常应用在消费者生产者场景。举个例子:一个电动汽车,只要有电,他就能运动。BlockingQueue接口的具体实现BlockingQueue生产者消费者实例Producerpublic class Producer implements Runnable { private static L原创 2020-10-12 20:08:52 · 924 阅读 · 0 评论 -
# Java 线程和线程池的使用
Java 线程池的使用常用创建线程的方法集成Thread重写run()public class TestExtendsThread { static class Test1ExtendsThread extends Thread { @Override public void run() { System.out.println("我是Test1ExtendsThread的线程!"); } } publ原创 2020-08-06 21:44:47 · 943 阅读 · 0 评论 -
# Jdk 1.8 包结构用途分析
Jdk 1.8 包结构用途分析Jdk1.8的包结构如下图所示下面大概对个部分的包进行一个简单的说明。Jre依赖包JRE运行所依赖的jar包,包含在/jre/lib和/jre/lib/ext文件夹下,如果有jar包希望作为JVM信任的Jar包第一时间加载,也可以直接将jar包置于/jre/lib/ext文件夹下。各部分jar包如下:Jar包作用access-bridge-64.jarMicrosoft Windows操作系统的Java Access Bridge使基于Wi原创 2020-08-02 15:19:08 · 1658 阅读 · 0 评论 -
# Java 初识Jvm——垃圾回收
jAVA 初识jvm(五)什么是垃圾?在运行程序中没有任何指针指向的对象,这个对象就是需要被回收的垃圾。垃圾回收算法引用技术算法(标记阶段)对每个对象保存一个整型的引用计数器属性。对于一个对象,如果他没有在任何地方被引用,那么它的引用计数器为0,表示这个对象不再被使用,可进行回收。优点:1.实现简单,垃圾对象便于识别,判定效率高,回收没有延迟。缺点:1.需要单独的字段存储计数器,增加了存储空间的开销。2.增加了时间开销,每次需要更新计数器。3.无法处理循环引用的情况,导致ja原创 2020-06-08 22:04:04 · 241 阅读 · 0 评论 -
# Java 初识Jvm——运行时数据区
jAVA 初识jvm(四)运行时数据区域(Running data area)运行数据区域结构如图所示:1.方法区、堆栈对应的是一个进程。程序计数器、本地方法栈、虚拟机栈对应的是线程。线程间共享堆、堆外内存(方法区、代码缓存)。2.一个运行时数据区域相当于一个唯一的Runtime类的实例。Runtime是单例的。程序计数器(Pc寄存器)1.Pc寄存器是用来存储指向下一条指令的地址(即将执行的指令),执行引擎根据Pc寄存器指向的指令地址取指令。运行速度快。2.每个线程有一个Pc寄存器,是线原创 2020-05-29 21:22:41 · 309 阅读 · 0 评论 -
# Java 初识Jvm——类加载器子系统
jAVA 初识jvm(三)类加载器子系统1.类加载器子系统负责从文件系统或者网络中加载class文件,class文件要求具有特定的文件标识。2.ClassLoader只负责class文件的加载,至于它是否可以运行,则由Execution Engine决定。3.加载的类信息存放于一块成为方法区的内存空间。还会存放运行时常量池.如图为引用网图展示一个类的加载过程:加载阶段(Loading)1.通过一个类的全限定名获取此类的二进制流。2.将字节流代表的静态存储结构转换为运行时的数据结构。3.在原创 2020-05-23 16:58:07 · 307 阅读 · 0 评论 -
# Java 初识Jvm
jAVA 初识jvm(二)JVM1.Java虚拟机(Java Virtual Machine):解释运行字节码文件。字节码进行相应的规范之后又Jvm虚拟机进行运行。2.JVM特点:一次编译到处运行自动内存管理自动垃圾回收管理3.位置:Jvm是运行在操作系统之上,他与硬件没有直接的交互。Jvm整体结构如图:该图为网络示例图Jvm的架构模型 由于跨平台性的设计:java的指令都是根据基于栈进行设计的,栈:跨平台性,指令集小,指令多;执行性能比寄存器差。基于栈式架构适用于资源原创 2020-05-22 23:58:14 · 1400 阅读 · 0 评论 -
# Java中的Http和URL
Java中的Http和URLURL(统一资源定位符)http://www.baidu.com/resource?type=jpg&name=getURLConnection类:表示与URL建立的通信连接,URLConnection类的对象使用URL类的openConnection()方法获得/** * URLConnection */@Testpublic void...原创 2019-12-30 21:55:59 · 472 阅读 · 0 评论