美文网首页
Java基础3

Java基础3

作者: 胡翔js | 来源:发表于2019-12-09 19:30 被阅读0次

Object equals 方法 默认比较对象的地址值(有空指针报错可能)
Objects.equals静态方法比较两个人对象会判断空,防止空指针

boolean b = Objects.equals(s1,s2);
/*
public static boolean equals(Object a,Object b) {
  return (a == b) || (a != null && a.equals(b));
}
*/

StringBuilder原理示意图


屏幕快照 2019-12-06 下午4.45.33.png

Collections家族图谱

屏幕快照 2019-12-06 下午4.55.27.png

集合中迭代器原理图


屏幕快照 2019-12-06 下午5.04.12.png

数组内部结构示意图


屏幕快照 2019-12-06 下午5.48.28.png

链表内部结构图


屏幕快照 2019-12-06 下午5.54.48.png

哈希值:是一个十进制的整数,有系统随机给出(就是对象的地址值,是一个逻辑地址值,是模拟出来得到地址,不是数据实际存储的物理地址)
HashSet内存结构图


屏幕快照 2019-12-06 下午7.22.53.png

HashSet存储元素不重复的原理


屏幕快照 2019-12-06 下午7.29.35.png

linkedHashSet集合
底层是一个哈希表(数组+链表/红黑树)+链表,多了一条链表(记录元素的存储顺序),保证元素有序。

可变参数

当方法的参数列表数据类型已经确定,但是参数的个数不确定,就可以使用可变参数
可变参数原理
可变参数底层就是一个数组,根据传递参数个数不同,会创建不同长度的数组,来存储这些参数传递个数,可以是0个(不传递)。1.2.3...。。多个

public  int add(int...arr){
// arr底层是一个数组 
}
线程

多线程过程图


屏幕快照 2019-12-07 上午10.00.27.png

多线程内存图解


屏幕快照 2019-12-07 上午10.00.27.png

实现Runable接口创建的好处
1.避免了单继承的局限性
一个类智能继承一个类,类继承了Thread就不能继承其他的类,实现Runnable接口,还可以继承其他的类,实现其他的接口
2.增强了程序的扩展性,降低了程序的耦合性,实现Runnable接口的方式,把设置线程任务和开启新线程进行了分离,实现类中,重写了run方法,用来设置线程任务,创建Thread类对象,调用start方法,用来开启新线程。

//创建一个Runnable接口的实现类对象
Runnable run = new RunnableImpl();
//创建Thread类对象,构造方法传递Runnable接口的实现类对象
//调用Thread类中start方法,开启新的线程执行run方法
t.start();

同步技术的原理


屏幕快照 2019-12-07 上午11.18.30.png

相关文章

  • 开课吧大数据高级开发工程师 百度网盘分享

    课程大纲: java的基础课程(额外提供)阶段2:linux基础阶段3:java基础阶段4.5:mysql阶段6:...

  • java学习路径

    一、java基础知识 (30天) 1. 语言基础, java基础,环境变量 2. 语言基础, 进制转换 3. 语言...

  • Java 基础

    Java 基础01Java开发入门 Java 基础02Java编程基础 Java 基础03面向对象 Java 基础...

  • 开课吧-大数据高级开发工程师 百度网盘分享

    01.阶段1:java的基础课程02.阶段2:linux基础03.阶段3:java基础04.阶段4:mysql05...

  • 学习路线

    1、java基础 2、linux命令,软件安装 3、java-web:servlet 4、java-web:spr...

  • 2018-2019 目标技术栈

    一、java基础 1.Java 集合 2.Java 线程 3.Java io变成 4.Java 网络编程 二、my...

  • Java基础知识整理(一)

    1.Java基础知识体系 2.Java技术体系平台 3.Java语言特点与核心机制 1.Java基础知识体系 2....

  • Java基础3

    接口 当一个抽象类中的方法都是抽象的时候 可以将该抽象类用另一种方式表示 即接口 定义接口的关键字是 Interf...

  • java基础(3)

    引用数据类型(reference type):用在对象上的,一个对象可以被多个引用所指向。如果一个对象被多个引用所...

  • Java基础3

    Object equals 方法 默认比较对象的地址值(有空指针报错可能)Objects.equals静态方法比较...

网友评论

      本文标题:Java基础3

      本文链接:https://www.haomeiwen.com/subject/clyegctx.html