摘要: String的基本特性 String:字符串,使用一对 “” 引起来表示 String s1 = "atguigu" ; // 字面量的定义方式 String s2 = new String("hello"); // new 对象的方式 String被声明为final的,不可被继承 String实现 阅读全文
posted @ 2021-05-29 22:01 阳神 阅读(325) 评论(1) 推荐(0) 编辑
摘要: 执行引擎概述 执行引擎概述 执行引擎是Java虚拟机核心的组成部分之一。 “虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器、缓存、指令集和操作系统层面上的,而虚拟机的执行引擎则是由软件自行实现的,因此可以不受物理条件制约地定制指令集与执行 阅读全文
posted @ 2021-05-29 16:56 阳神 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 对象的实例化 大厂面试题 美团: 对象在JVM中是怎么存储的? 对象头信息里面有哪些东西? 蚂蚁金服: 二面:java对象头里有什么 对象创建的方式 new:最常见的方式、单例类中调用getInstance的静态类方法,XXXFactory的静态方法 Class的newInstance方法:在JDK 阅读全文
posted @ 2021-05-29 15:38 阳神 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 栈、堆、方法区的交互关系 从线程共享与否的角度来看 ThreadLocal:如何保证多个线程在并发环境下的安全性?典型场景就是数据库连接管理,以及会话管理。 栈、堆、方法区的交互关系 下面涉及了对象的访问定位 Person 类的 .class 信息存放在方法区中 person 变量存放在 Java 阅读全文
posted @ 2021-05-29 13:51 阳神 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 堆的核心概述 堆与进程 堆针对一个JVM进程来说是唯一的。也就是一个进程只有一个JVM实例,一个JVM实例中就有一个运行时数据区,一个运行时数据区只有一个堆和一个方法区。 但是进程包含多个线程,他们是共享同一堆空间的。 一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域。 Java堆区 阅读全文
posted @ 2021-05-29 07:17 阳神 阅读(138) 评论(0) 推荐(0) 编辑