Java基础
紫龙队长
105552337
展开
-
JVM内存结构和JAVA内存模型(JMM)
JVM内存结构 JVM的内存结构,是指JAVA在JVM中运行时,在内存里所涉及到的几块区域。 JVM内存结构,分为堆,方法区,虚拟机栈,本地方法栈,程序计数器5块区域。 堆:保存对象实例,所有对象(包括数组)实例都在堆中分配。 方法区:存储被虚拟机加载后的类,静态变量,常量,即时编译器编译后的代码等数据。 虚拟机栈:也叫线程栈,每个线程运行时有自己独立的线程栈,里面存放了线程运行中创建的局部变量,...原创 2019-07-08 10:50:03 · 128 阅读 · 0 评论 -
JAVA基础问题整理(转载)
java基础 1、&和&&的区别 答: &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and) 2、Collection 和 Collections的区别 答: Collection是集合类的上级接口,继承与他的接口主要有Set 和List.Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、...转载 2019-07-10 10:22:14 · 138 阅读 · 0 评论 -
Java设计模式(访问者模式)
前言 最近在学习Groovy,无意中看到了里面谈到的访问者的设计模式,一直对设计模式似懂非懂,所以静下心来研究一下访问者模式。 这篇文章写的很不错,耐心看完后,算是对访问者模式有一点了解。记录一下,帮助自己记忆。 https://www.jianshu.com/p/62289b9bcfcb 访问者设计模式 1.定义 封装一些作用于某种数据结构中的各元素的操作,它可以在不改变数据结构的前提下定义作用...原创 2019-07-05 16:04:00 · 137 阅读 · 0 评论 -
Java并发开发(Thinking In Java)
前言 并发编程对于做后端的java工程师,是一项必备的技术能力,但是也是相对比较复杂的技术,这几天翻开尘封的Thinking In Java,读完了并发这一章,真的是读完,因为到后面很多的例子只能自己读懂,但是实际编写,还是需要再消化沉淀一下,才能写出来,下面就对这几天学习的内容做一个整理。 原理及意义 线程及进程的区别 进程是一个正在运行的应用程序,它包含一个或多个线程,是系统资源调度分配的基...原创 2019-07-16 11:57:36 · 179 阅读 · 0 评论 -
JUC之volatile学习理解
前言 Java util Concurrent 简称JUC,是javaEE里面很重要的一个知识点,下面学习一下juc里的关键词volatile。 Volatile的特点 1、保证可见性 2、不保证原子性 3、禁止指令重排 一、保证可见性 多线程并发编程时,程序的可见性是指,一个线程对资源进行变更后,立即写回主内存,并通知其他线程。 1、主内存和工作内存 java在运行时,对象信息都是存储在主内存当...原创 2019-08-13 16:03:19 · 221 阅读 · 0 评论 -
volatile在单例模式中的应用
单例模式 单例模式DCL(双端检锁机制) 示例代码: public class SingleDclDemo { public static SingleDclDemo instance =null; private SingleDclDemo(){ System.out.println("我是构造方法"); } public static Sin...原创 2019-08-14 14:25:06 · 502 阅读 · 0 评论