Java知识点
文章平均质量分 88
小毕先生
这个作者很懒,什么都没留下…
展开
-
反射的基本使用
一、通过反射,获取另一个模块的方法(不能直接调用SettingActivity)public class SettingActivity extends BaseActivity implements View.OnClickListener {private void test() {logE("我是反射拿到的数据");}Class<?> clazz = Class.forName("com.example.settinglib.activity.SettingAct.原创 2021-05-07 22:15:12 · 329 阅读 · 0 评论 -
LinkedHashMap是如何实现按照插入顺序有序输出的-addBefore()方法
一, LinkedHashMap是HashMap的子类,很多方法都是继承自父类,重要的区别就是内部类中多了两个entry,一个记录前方entry,一个记录后方entry,这样的双向链表结构保证了插入顺序的有序。 二, 总得来说,LinkedHashMap底层是数组+单项链表+双向链表。挺神奇的,数组+单向链表就是HashMap的结构,记录数据用...转载 2019-07-16 16:16:01 · 2213 阅读 · 0 评论 -
java--泛型
##泛型##一,在具体使用时,可以分为泛型接口、泛型类和泛型方法。- 1,泛型的好处: 是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,以提高代码的重用率。- 2,在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,- 3,命名泛型字母可以随意指定,尽量使用单个的大写字母...原创 2018-09-26 12:26:07 · 147 阅读 · 0 评论 -
switch相关
一,jdk1.7后,switch支持枚举类型,boolean,字符串。二,jdk 7 之前,switch 只能支持 byte、short、char、int 这几个基本数据类型和其对应的封装类型。switch后面的括号里面只能放int类型的值,但由于byte,short,char类型,它们会 自动 转换为int类型(精精度小的向大的转化),所以它们也支持。注意,对于精度比int大的类型,比...原创 2018-08-18 19:35:10 · 175 阅读 · 0 评论 -
ArrayMap和SpareseArray
一,基本使用 Map<String,String> arrayMap = new ArrayMap(); //要求版本19以上arrayMap.put("1",null);arrayMap.put(null,"2");arrayMap.put(null,"3");二,概念介绍public final class Arra...原创 2018-05-22 14:30:25 · 2208 阅读 · 0 评论 -
java反射
按例,首先描述定义一下。Reflection enables Java code to discover information about the fields, methods and constructors of loaded classes, and to use reflected fields, methods, and constructors to operate on thei...转载 2018-05-15 20:22:59 · 306 阅读 · 0 评论 -
java浅复制和深复制的区别
一、基本数据类型 & 引用类型1.1 基本概念在讨论 浅拷贝 & 深拷贝 这个问题之前,我们需要先了解 基本数据类型 & 引用类型 这两者之间的区别,否则后面会很疑惑。在Java当中,这两类的代表分别为:八种 基本数据类型:byte、short、int、long、float、double、char、boolean。引用类型:除去基本数据类型的其它类型都是引用数据类型,例如类...转载 2018-05-15 10:06:16 · 2516 阅读 · 0 评论 -
面试题之---ArrayList实现原理
单列集合图 1. ArrayList是一个动态数组,实现了List<E>, RandomAccess, Cloneable, java.io.Serializable,并允许包括null在内的所有元素。1.1,实现了RandomAccess接口标识着其支持随机快速访问,实际上,我们查看RandomAccess源码可以看到,其实里面什么都没有定义.因为ArrayList底...原创 2018-05-10 12:31:24 · 8252 阅读 · 5 评论 -
面试题之--HashMap原理
一,概念: 1,HashMap是基于哈希表的Map接口的非同步实现,允许使用null值和null键。当即key为null的键值对,hash值为0,hashmap保存的就是0。所以一个hashmap对象只会存储一个key为null的键值对,因为它们的hash值都相同。1.2,HashMap储存的是键值对,所以很快。但不保证映射的顺序....原创 2018-04-09 11:37:31 · 3932 阅读 · 0 评论 -
面试题之---java多线程
(一)多线程1,概念介绍 一般一个应用至少一个进程,一个线程,线程是进程的一个实体,是CPU调度和分派的基本单位.最简单的比喻多线程就像火车的每一节车厢,而进程则是火车。车厢离开火车是无法跑动的,同理火车也不可能只有一节车厢。 在操作系统中,线程是最小的调度单元,同时又是一种受限的资源,所以不可能无限制的产生,它的创建和销毁都是比较耗性能的. 因此,要尽量使用线程池,来管理线...原创 2018-03-19 10:04:30 · 987 阅读 · 0 评论 -
面试题之---java四种引用
一,java的4种引用方式在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周期。这4种级别由高到低依次为:强引用、软引用、弱引用和虚引用。目的:1,可以让程序员通过代码的方式决定某些对象的生命周期;2...原创 2018-03-13 17:26:18 · 753 阅读 · 0 评论