Java
文章平均质量分 92
Joeliawu
一句话很难介绍清楚。
展开
-
聊聊Java系列-集合之HashMap底层结构原理
前言 由于HashMap在我们的工作和面试中会经常遇到,所以搞懂HashMap的底层结构原理就显得十分有必要了。在JDK1.8之前,HashMap的底层采用的数据结构是数组+链表,而在JDK1.8及以后,HashMap的底层采用的数据结构是数组+链表+红黑树。因此想要弄懂HashMap的底层结构原理,需要先弄懂数组、链表、红黑树这三种数据结构。一、数据结构之数组详解 数组定义:采用一段连续的存储单元来存储数据。(看图说话) 数组特点...原创 2021-03-07 18:14:18 · 485 阅读 · 1 评论 -
聊聊Java系列-深入剖析JVM内存模型
一. JVM的提出(为什么需要JVM)?首先,我们看下下面这段简短的代码?/** * @Auther: limingwu * @Date: 2021/2/23 11:14 * @Description: */public class App { public int add() { int a = 1; int b = 2; int c = (a + b) * 100; return c; } pu原创 2021-02-25 15:30:07 · 374 阅读 · 1 评论 -
聊聊Java系列-泛型
前言 最近在复习java基础,复习完以后想总结下,学习的过程中,发现有篇文章写的挺好的,很是喜欢。所以就不自己写文章总结,干脆来转载了,希望作者大大多多海涵。 原文链接:https://www.cnblogs.com/lwbqqyumidi/p/3837629.html 原文作者:HappyCorn一. 泛型概念的提出(为什么需要泛型)?首先,我们看下下面这段简短的代码?public class GenericTest { ...转载 2021-02-22 16:48:28 · 143 阅读 · 0 评论 -
聊聊Java系列-反射
前言 我们为什么要学反射呢?因为反射是框架设计得灵魂。那么框架又是什么呢?框架是半成品软件,可以在框架的基础上进行软件开发,简化编码。一、反射 概念:将类得各个组成部分封装为其他对象,这就是反射机制。 本质:得到类的class对象后,反向获取对象的各种信息。 好处:1.可以在程序运行过程中,操纵这些对象。2.可以解耦,提高程序的可扩展性。 如图通过反射在运行时阶段获取字节码对象,通过字节码对象获取对象的方法,...原创 2021-01-17 16:34:48 · 331 阅读 · 1 评论 -
聊聊Java系列-注解
一、注解概念: 注解也叫元数据,它与类、接口、枚举是在同一层次。它可以声明在包、类、字段、方法、局部变量、方法参数等的前面,用来对这些元素进行说明,注释。作用分类: 1:通过代码里标识的元数据生成文档。比如@see注解表示文档上的说明信息; 2:通过代码里标识的元数据对代码进行分析。比如@Test注解下的方法可以被单元测试执行; 3:通过代码里标识的元数据让编译器能够实现基本的编译检查。比如:@Override注解用来表示方法重写。二、注...原创 2021-01-16 23:39:50 · 187 阅读 · 0 评论 -
Java 内存分配全面浅析
Java堆.栈和常量池 笔记今天复习了一下这些知识,顺便做了下笔记.1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象。4. 静态域:存放静态成员(static定义的)5. 常量池:存放字符...转载 2018-07-09 19:27:14 · 229 阅读 · 0 评论 -
JavaBean关于为什么要重写hashCode()方法和equals()方法及如何重写
记得有一次去面试Java软件开发工程师,面试官问了我一个关于JavaBean为什么要重写hashCode()方法和equals方法,我记得当时我巴拉巴拉半天就是没有说到重点,现在想一想归根到底还是我对这两个的理解不深刻,现在我特定来总结下.hashCode 方法用于散列集合的查找,equals 方法用于判断两个对象是否相等。一、我们为什么需要重写hashCode()方法和equals()方法?...原创 2018-07-18 19:53:31 · 5838 阅读 · 7 评论 -
聊聊Java静态代理与动态代理的那些事儿
一、什么是代理模式以及为什么需要代理模式?代理模式就是,个人去买房子,可以直接去买房子,如果直接去买房子的话就得办很多的手续,然后跑很多地方,这时候房产中介就出现了,我们可以把买房子的事交给中介,让中介做我们的代理,这样我们会省力很多,不需要关心房子是怎么买下来的。如果还不是很理解的话,请接着往下看.package com.cld.demo.proxy;/** * * @autho...原创 2018-07-26 18:23:35 · 296 阅读 · 2 评论 -
介绍什么是Java虚拟机
什么是Java虚拟机作为一个Java程序员,我们每天都在写Java代码,我们写的代码都是在一个叫做Java虚拟机的东西上执行的。但是如果要问什么是虚拟机,恐怕很多人就会模棱两可了。在本文中,我会写下我对虚拟机的理解。因为能力所限,可能有些地方描述的不够欠当。如果你有不同的理解,欢迎交流。我们都知道java程序必须在虚拟机上运行。那么虚拟机到底是什么呢?先看网上搜索到的比较靠谱的解释:虚...转载 2018-10-11 10:26:22 · 650 阅读 · 0 评论