自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

转载 Java volatile关键字

原文链接:https://www.techug.com/post/java-volatile-keyword.html在Java相关的岗位面试中,很多面试官都喜欢考察面试者对Java并发的了解程度,而以volatile关键字作为一个小的切入点,往往可以一问到底,把Java内存模型(JMM),Java并发编程的一些特性都牵扯出来,深入地话还可以考察JVM底层实现以及操作系统的相关知识。 下面我们以一次假想的面试过程,来深入了解下volitile关键字吧!面试官: Java并发这块了解的怎么样?..

2021-03-24 23:50:54 104

原创 Java容器类继承图

2021-03-08 11:41:34 285

转载 Java超类型通配符有什么用(和单纯使用超类作为参数的区别)

转载自https://www.coolcou.com/java-tutorial/java-generic-container/java-supertype-wildcards.htmlJava 超类型通配符,还有一种通配符,与形式<? extends E>正好相反,它的形式为<? super E>,称为超类型通配符,表示E的某个父类型。它有什么用呢?有了它,我们就可以更灵活地写入了。如果没有这种语法,写入会有一些限制。来看个例子,我们给DynamicArray添加一个方法.

2021-03-02 18:50:25 352

转载 java超类及子类通配符

转载自https://www.oschina.net/question/2847805_2196069中大止刀口的答案java 的 通配 ? super和? extends实际上是对叫括号内要代表的类型的限定,用于类型推导。而不能简单的认为把类型代入?后成立就可以,而是要类型推导符合才行。Java泛型这样的设计就造成了需要具体场景下的类型分析推导才能分辨是否可行,这就很不直观。这里主要说下 返回类型和参数类型。void method(? super C);//参数是C的超类,只要是.

2021-03-02 18:31:10 220

转载 Java为何采用擦除实现伪泛型

转载自: https://blog.csdn.net/qianlia/article/details/105686905 在 Java 中的 泛型 ,常常被称之为 伪泛型 ,究其原因是因为在实际代码的运行中,将实际类型参数的信息擦除掉了 (Type Erasure) 。 那是什么原因导致了 Java 做出这种妥协的呢? 下面我就带

2021-02-27 15:08:58 98

转载 JVM的Class对象的存储位置和作用

本篇主要为了防止以后找不到完全转载自:http://blog.sina.com.cn/s/blog_9f8ffdaf0102xj96.html。JVM的Class对象的存储位置和作用 (2018-03-25 16:50:16)分类: Java在弄清这个问题前必须的明白类型信息和JVM方法区。类型信息是一个java类的描述信息(class mate),classloader加载一个类时从class文件中提取出来并存储在方法区。它包括以下信息:1.类型的完整有效名,类型的修饰符(publi.

2021-02-18 21:54:59 954

转载 Java static关键字与初始化

原文:https://www.cnblogs.com/zhangxuan/p/8287080.html使用 Arrays 类操作 Java 中的数组语法: Arrays.sort(数组名);可以使用 sort( ) 方法实现对数组的排序,只要将数组名放在 sort( ) 方法的括号中,就可以完成对该数组的排序(按升序排列)//导入Arrays类import java.util.Arrays;// 定义一个字符串数组String[] hobbies = { "sports", "g.

2021-02-18 15:04:38 92

原创 Java正则表达式单斜线与双斜线

jdk版本:openjdk 11今天发现似乎在java中使用正则表达式时,如果正则表达式字符串是在类内部由字面量定义或传参, 则必须满足java对反斜线的规定,使用双反斜线表示正则表达式反斜线而如果regex采用的是main方法中命令行传入的参数,则只需要使用一个反斜线转义即可。不知道为什么这么设计...

2021-02-17 18:41:50 786

转载 JVM GC Roots

原文:https://www.cnblogs.com/rumenz/articles/14099927.html 什么是GC Roots </h1> <div class="clear"></div> <div class="postBody"> 可达性算法中以GC Root对象为起点开始搜索。什么是GC Root对象虚拟机栈中引用的对象public class Rumenz{

2021-02-07 12:37:10 82

原创 句柄的作用

数据对象加载进入内存中之后即获得了地址,但是这个地址并不是固定的,(至于为什么以及什么情况下变动具体需要大家研究虚拟地址的原理与机制,我这里只提我确定知道的例子)数据对象会根据需要在内存与硬盘之间游弋移动(例如不常用的数据会为常用数据让出其占用的内存空间,进而被淘汰进硬盘虚拟内存之中以优化配置整体系统的资源,从而提升效率性能),因此其物理地址总是变动的,那么作为管理者 则必须对 管理对象所发生的变化了如指掌才行,因此系统为进程分配固定的地址(句柄)来存储进程下的数据对象变化后的地址,也就是当前的地址,其实设

2021-02-03 23:54:59 237

转载 java中String、StringBuffer和StringBuilder的区别(简单介绍)

java中String、StringBuffer和StringBuilder的区别(简单介绍)原文链接:https://www.cnblogs.com/weibanggang/p/9455926.html 简单介绍java中用于处理字符串常用的有三个类:1、java.lang.String2、java.lang.StringBuffer3、java.lang.StrungBuilder三者共同之处...

2021-01-25 23:33:48 1451 1

原创 设计模式学习笔记(更新中)

一. 设计模式入门设计原则1. 找出应用中可能需要变换之处,把他们独立出来,不要与不易变化的代码混在一起设计原则2. 针对接口而非实现编程设计原则3. 多用组合,少用继承设计原则4. 为交互对象之间的松耦合而努力(观察者模式)设计原则5. 类应该对扩展开发,对修改关闭二. 观察者模式定义对象之间的一对多依赖,多个观察者对象依赖于主题对象的状态更新,当主体对象状态改变时,所有观察者对象均收到通知并自动更新。Java内置支持观察者模式,利用java.util.observer接口以及java.u

2021-01-18 22:15:43 48

转载 Java静态方法继承问题

原文链接:https://www.cnblogs.com/yaoboyyao/p/3601900.html结论:java中静态属性和静态方法可以被继承,但是没有被重写(overwrite)而是被隐藏.原因:1). 静态方法和属性是属于类的,调用的时候直接通过类名.方法名完成对,不需要继承机制及可以调用。如果子类里面定义了静态方法和属性,那么这时候父类的静态方法或属性称之为"隐藏"。如果你想要调用父类的静态方法和属性,直接通过父类名.方法或变量名完成,至于是否继承一说,子类是有继承静态方法和属性,但是跟

2021-01-18 21:24:53 558

转载 Java哈希码

转载自https://www.cnblogs.com/hane/p/7338047.html哈希码(也叫散列码)是一个整数值。计算整数的算法称为散列函数。Java使用散列码从基于散列的集合中有效地检索数据。Object类有一个返回int的hashCode()方法,它是对象的哈希码。该方法的默认实现通过将对象的内存地址转换为整数来计算对象的哈希码。下面是我们在类中重写hashCode()方法时必须遵循的规则。假设有两个对象引用,x和y。如果x.equals(y)返回true,x.hashCo.

2021-01-05 19:24:48 277

转载 Java符号引用与直接引用

原文章链接:https://dazi.kukuw.com/art_show_2044154.html在JVM中,类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载7个阶段。而解析阶段即是虚拟机将常量池内的符号引用替换为直接引用的过程。一、符号引用(Symbolic References):符号引用以一组符号来描述所引用的目标,符号可以是任何形式的字面量,只要使用时能够无歧义的定位到目标即可。例如,在Class文件中它以CONSTA

2021-01-05 13:17:02 3047

转载 Java编译方式

Java主流编译体系采用了前端编译+JIT编译的方式: 1、前端编译 把Java源码文件(.java)编译成Class文件(.class)的过程; 也即把满足Java语言规范的程序转化为满足JVM规范所要求格式的功能; 优点: 许多Java语法新特性(”语法糖”:泛型、内部类等等),是靠前端编译器实现的,而不是依赖虚拟机;...

2021-01-03 23:05:17 150

转载 从头到尾彻底理解KMP

从头到尾彻底理解KMP   作者:July 时间:最初写于2011年12月,2014年7月21日晚10点 全部删除重写成此文,随后的半个多月不断反复改进。后收录于新书《编程之法:面试和算法心得》第4.4节中。   1. 引言     本KMP原文最初写于2年多前的2011年12...

2020-12-29 09:04:26 102

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除