首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
怎么看jdk的根目录
2024-11-02
JDK根目录介绍
/bin 存放可执行程序(编译器javac.exe 运行器java.exe 文档生成器javadoc.exe等 ). /db 小型数据库文件. /jre JRE. /include 形成jdk的c.c++语言所需的头文件. /lib java类库(library). /src.zip JDK源代码(JAVA基础源码).
一点一点看JDK源码(〇)
一点一点看JDK源码(〇) liuyuhang原创,未经允许进制转载 写在前面: 几乎所有的大神都会强调看源码,也强调源码的重要性: 但是如何看源码,源码看什么?看了什么用?看了怎么用? 困扰很多人,尤其是初学者. 本系列的目的在于看源码,并非学习和总结源码,先能够粗略的浏览大量的原码 并保证知晓有这么个东西,有个基本概念,再对其中的设计原理,优化方案进行学习 本文简单的回答以下几个问题: 1.为什么要看源码? 2.什么时候或什么条件下看源码? 3.看源码看什么? 4.看源码有什么用? 5.源码
一点一点看JDK源码(一)Collection体系概览
一点一点看JDK源码(一)Collection体系概览 liuyuhang原创,未经允许进制转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 Collection为集合类,是jdk中最为常用的类了,实际上我并不认同这个东西叫做集合 我更倾向于叫做容器,当然容器不止有它一种. 在计算机专业中,大概都会学一门叫做<数据结构>的课程吧 本质上来说,数据结构,实际上是设计一种容器,而容器的特性大体包括如下: 容器中如何进行存储 容器中的数据如何获取 容器中的数据如何添
一点一点看JDK源码(二)java.util.List
一点一点看JDK源码(二)java.util.List liuyuhang原创,未经允许进制转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 List译为表,一览表,列表,目录,名单,有种index的意味在里头 编程语言中的List是强调线性,可以简单的视为一个双向串行的集合 List的特色是在结婚的任何位置增加或 删除元素都比较快,本身并不只是随机存取. 同时,List是众多语言中都提供的常用类库之一. java.util.List是一个接口,该接口继承了Co
一点一点看JDK源码(三)java.util.ArrayList 前偏
一点一点看JDK源码(三)java.util.ArrayList liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 ArrayList是一个容量不固定的容器,为单列,有序集合,容量可扩容,扩容系数为1.5 有最大值,一般达不到. ArrayList是线程不安全的,其扩容发生于集合修改的时候,如add,addAll等 ArrayList底层使用的是Object数组,初始化内容为10个容量的元素 使用ArrayList的时候,几种
一点一点看JDK源码(四)java.util.ArrayList 中篇
一点一点看JDK源码(四)java.util.ArrayList 中篇 liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.综述 在前篇中,对于java.util.ArrayList进行了一些源码注释,能坚持看完的估计都是神一般的存在. 不过看源码并需要一个艰苦的过程,枯燥是很正常的. 但是不是要一直都很枯燥,本文将对此类进行分类解析. 2.关注点 2.0.ArrayList是如何构成的? 在java中,一个类的构成并不是十分复杂,列
一点一点看JDK源码(五)java.util.ArrayList 后篇之forEach
一点一点看JDK源码(五)java.util.ArrayList 后篇之forEach liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 代码比较简单 ArrayList的forEach方法需要实现Consumer接口,实现其未实现的方法即可 该方法返回值为void,实际上就是任意写的了,代码如下: package com.FM.ArrayListStudy; import java.util.ArrayList; import jav
一点一点看JDK源码(五)java.util.ArrayList 后篇之sort与Comparator
一点一点看JDK源码(五)java.util.ArrayList 后篇之sort与Comparator liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) Comparator为额外实现的比较接口,与类本身无关 该接口在ArrayList的sort中有应用(很多时候都可以用的,只是以此举例) Comparator接口主要用途有两种, 1.比较有序集合内任意两个元素A.B(完全遍历的compareTo方法,于compare方法内实现) 若A
一点一点看JDK源码(五)java.util.ArrayList 后篇之SubList
一点一点看JDK源码(五)java.util.ArrayList 后篇之SubList liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) SubList可以将一个数组根据index拆分为多个数组,使用多线程对于数组进行遍历 未使用多线程的代码比较简单,代码示例如下: package com.FM.ArrayListStudy; import java.util.ArrayList; import java.util.List; publ
一点一点看JDK源码(五)java.util.ArrayList 后篇之Spliterator多线程遍历
一点一点看JDK源码(五)java.util.ArrayList 后篇之Spliterator多线程遍历 liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) Spliterator为jdk1.8新增接口,由ArrayList.spliterator();获得其返回值对象Spliterator. 该对象可以使用trySplit进行迭代器拆分,每次拆分后的迭代器接近上一次的二分之一. 这是官方对于大数据量数组多线程遍历加工的一种趋势性指引.
一点一点看JDK源码(五)java.util.ArrayList 后篇之removeIf与Predicate
一点一点看JDK源码(五)java.util.ArrayList 后篇之removeIf与Predicate liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) Predicate为jdk1.8新增接口,由ArrayList.removeIf(Predicatep)调用. 使用起来也比较方便,从ArrayList中移除Predicate 中test方法的返回值(boolean)来确定是否删除, 示例代码如下: package com.FM
一点一点看JDK源码(六)java.util.LinkedList前篇之链表概要
一点一点看JDK源码(六)java.util.LinkedList前篇之链表概要 liuyuhang原创,未经允许禁止转载 本文举例使用的是JDK8的API 目录:一点一点看JDK源码(〇) 1.什么是链表 链表是一种常见的数据结构,属于一种线性表. 虽说链表是线性表,但是其储存的方式并非是线性的,而是节点(Node)方式存储的. 每一个节点都含有一个指针,指向下一个节点. 同时每一个节点都存有自身的数据信息. 链表有点像衣服的拉链,是一个扣一个的,每两个之间都有一个间隔,要想获取某个位置的数据
NIO 源码分析(04) 从 SelectorProvider 看 JDK SPI 机制
目录 一.SelectorProvider SPI 二.SelectorProvider 加载过程 2.1 SelectorProvider 加载 2.2 Windows 下 DefaultSelectorProvider 2.3 Unix 下 DefaultSelectorProvider NIO 源码分析(04) 从 SelectorProvider 看 JDK SPI 机制 Netty 系列目录(https://www.cnblogs.com/binarylei/p/10117436.ht
从源码看JDK提供的线程池(ThreadPoolExecutor)
一丶什么是线程池 (1)博主在听到线程池三个字的时候第一个想法就是数据库连接池,回忆一下,我们在学JavaWeb的时候怎么理解数据库连接池的,数据库创建连接和关闭连接是一个比较耗费资源的事情,对于那些数量多且时间短暂的任务,会导致频繁获取和释放连接,这样使得处理事务的效率大大降低,多以我们创建一个连接池,里面放了指定数目的连接,当应用需要数据库连接的时候去里面获取,使用完毕后再放到连接池里,这样就避免了重复的获取连接和释放连接,至于要获取什么样的连接池我们可以根据应用的特征,设置参数来决定. (
从fastjson多层泛型嵌套解析,看jdk泛型推断
给你一组json数据结构,你把它解析出来到项目中,你会怎么做? // data1 sample { "code" : "1", "msg" : "Success", "data" : { "userid1" : { "name" : "Zhangsan", "sex" : "male" } } } // da
maven jar 怎么看jdk编译版本
查看jar包里面MANIFEST.MF文件Build-Jdk的信息 本例中:Build-Jdk:1.7.0_45 解决项目中依赖的jar与jdk冲突.
从JDK源码角度看线程池原理
"池"技术对我们来说是非常熟悉的一个概念,它的引入是为了在某些场景下提高系统某些关键节点性能,最典型的例子就是数据库连接池,JDBC是一种服务供应接口(SPI),具体的数据库连接实现类由不同厂商实现,数据库连接的建立和销毁都是很耗时耗资源的操作,为了查询数据库中某条记录,最原始的一个过程是建立连接.发送查询语句.返回查询结果.销毁连接,假如仅仅是一个很简单的查询语句,那么可能建立连接与销毁连接两个步骤就已经占所有资源时间消耗的绝大部分,如此低下的效率显然让人无法接受.针对这个过程是否能
JDK源码看ArrayList和Vector的一些区别
最近在看JDK源码,从源码的角度记录一下ArrayList和Vector的一些区别 1.new a.不指定长度 Vector默认创建10个元素的数组 public Vector() { this(10); } ArrayList默认指向一个0个元素的数组 public ArrayList() { super(); this.elementData = EMPTY_ELEMENTDATA; } b.指定长度 Vector创建指定元素个数的数组,默认增长量为0 public Vector(int i
JDK的目录
要想深入了解Java必须对JDK的组成, 本文对JDK6里的目录做了基本的介绍,主要还是讲解 了下JDK里的各种可执行程序或工具的用途 Java(TM) 有两个平台 JRE 运行平台,包括Java虚拟机,运行类库,java应用程序装载器. JRE不是开发环境,所以不包括编译器,调试器,有需要这些请安装JDK(TM) //说明 :环境为Windows XP SP3 下 的JDK为1.60版本 JAVA_HOME = C:\jdk1.6.0 //---------------------------
JDK个目录,以及与环境变量的关系
最近学习过程中老是看JDK里面的东西,可每次都翻书找,找了又忘.JDK,我们今天来个了断吧........ 一:bin: JDK中所包含的开发工具的可执行文件,PATH环境变量应该包含一个指向此目录的项.书中是这样说的:一些命令行工具,包括Java编译器的启动命令. 二:lib: 开发工具使用的文件.里面有个tool.jar,它包括支持JDK的工具和实用程序的非核心类.里面还有个dt.jar,它是BeanInfo文件的 DesignTime归档,BeanInfo文件用来告诉交互开发环境[IDE]
用ant重新编译jdk加入调试信息
(文章后面提供了ant和build.xml打包之后的build.zip下载,解压build.zip,然后将apache-ant-1.9.2-bin.zip解压即完成了ant安装,也可到http://ant.apache.org/bindownload.cgi下载widnows平台下的zip压缩包) 当用eclipse调试jdk源码的时候,会发现里面的局部变量的值无法看到,这是因为sun在编译jdk的时候,没有加入调试信息.下面就介绍用ant如何重新编译jdk,加入调试信息. 首先,要安装ant,
热门专题
plsql登陆信息配置迁移
npm prefix 默认
如何查找某个脚本正在被哪个脚本调用
chrome修改referer插件
Dijkstra算法使用带权邻接表
linux 设置两个frp
.net core 5.0 返回格式首字母大写
swiftUI statusBar true不回隐藏状态栏
compare 4重置试用
MFC bmp 显示
vue3 setup 内获取name
viewport3D 内存占用 wpf
elementUI表单验证不生效
androoid 修改安装后的名称
wireshark seq 一样 ack不一样
html 子父 页面传参
postgresq存储过程循环schema
c# reportviewer界面
flask 应用错误代码
微软商店软件怎么设置默认管理员打开