自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Git常用命令

本文主要介绍了Git相关的命令。

2021-09-04 16:03:49 121

原创 Linux常用服务类命令

本文主要说明了Linux常用的服务类命令。

2021-09-04 15:53:50 557

原创 方法的参数传递机制

本文说明了Java中方法的参数传递机制,只有值传递,*要注意String类型和包装类等对象的不可变性。

2021-09-04 11:54:25 146

原创 类初始化和实例初始化

本题说明了类初始化和实力初始化的过程和一些注意点。

2021-09-04 11:46:34 151

原创 局部变量、实例变量和类变量的使用

本题主要考察局部变量、实例变量和类变量的使用。

2021-09-03 12:04:27 103

原创 i++和++i

i++和i++相面面试题计算原则:赋值运算符=,最后计算;=右边的从左到右加载值依次压入操作数栈;实际先算哪个,看运算符优先级;赋值操作是将操作数栈中的值赋给局部变量表,比如i=i++,假设i的初始值为10,局部变量表中的值变化顺序为10->11->10;自增、自减操作都是直接在局部变量表中修改变量的值,不经过操作数栈;i++是先将局部变量表中的值压入操作数栈,局部变量表中的值+1;++i是局部变量表中的值+1,再压入操作数栈;最后的赋值之前,临时结果也是存储在操作数栈中。

2021-09-03 09:38:35 88

原创 垃圾回收概述

本文主要对JVM的垃圾回收进行概述,说明了什么是垃圾、为什么需要垃圾回收以及Java的垃圾回收机制。

2021-09-01 22:08:57 76

原创 11_执行引擎

本问主要介绍了JVM的执行引擎,首先说明Java代码编译和Class字节码的执行过程,然后对几个相关概念进行辨析,最后分别介绍解释器和即时编译器的工作特点。

2021-09-01 21:43:05 121

原创 10_对象的实例化&内存布局与访问定位

本文介绍了对象实例化的方式和步骤,对象的内存布局由对象头、实例数据和对齐填充等三部分组成;对象的访问有句柄访问和直接指针两种方式,HotSpot JVM采用后者。

2021-09-01 08:59:27 78

原创 09_方法区

本文主要介绍了Java虚拟机的方法区,说明堆、栈和方法区的交互关系以及对方法区的理解,分析了方法区的内部结果、不同JDK版本的演进细节以及垃圾回收情况。

2021-09-01 08:51:45 104

原创 08_虚拟机堆

本文主要介绍了Java虚拟机中的堆区,堆区主要分为老年代与年轻代,说明了对象的分配过程和三种GC方式;分析了分代思想,阐述内存分配的过程和策略,最后介绍了堆空间的参数设置。

2021-08-31 22:52:00 94

原创 07_本地方法接口和本地方法栈

本文主要介绍了本地方法接口和本地方法栈,有些层次的任务用Java实现起来不容易,或者我们对程序的效率很在意时,会调用本地方法接口;本地方法栈(Native Method Stack)用于管理本地方法的调用,在 Hotspot JVM中,直接将本地方法栈和虚拟机栈合二为一。

2021-08-31 22:44:05 97

原创 06_虚拟机栈

本文主要介绍了虚拟机的栈,栈的存储单位为栈帧,每个栈帧都包含局部变量表、操作数栈、动态链接、方法返回地址和一些附加信息等,对这几部分内容进行了较为详细的说明。

2021-08-31 22:40:42 91

原创 05_程序计数器

本文主要介绍了程序计数器,程序计数器的作用是存储下一条指令的地址,即将要执行的指令代码;是运行速度最快的存储区域;每个线程都有自己的程序计数器,是线程私有的,生命周期与线程的生命周期保持一致。

2021-08-31 22:31:24 261

原创 04_运行时数据区及线程

本文主要包括两部分内容,运行时数据区和线程,运行时数据区主要包括方法区和堆(线程共享的)、程序计数器和虚拟机栈和本地方法栈(线程私有的);介绍了JVM中线程的使用情况。

2021-08-31 22:26:27 66

原创 03_类加载器

本文主要介绍了不同的类加载器并进行测试,说明了双亲委派机制和破坏双亲委派机制的例子,最后介绍了自定义类加载器的方法和JDK9关于类加载器的新特性。

2021-08-31 22:20:38 211

原创 02_类的加载过程

本文主要介绍了类的声明周期,主要是类的加载过程,包括三个阶段:加载阶段、链接阶段和初始化阶段。

2021-08-31 22:11:36 81

原创 01_JVM与Java体系结构

本文主要介绍了JVM和Java的体系结构,包括Java发展的重大事件,Java虚拟机的整体结构和Java代码的执行流程以及JVM的发展历程等内容。

2021-08-31 21:58:51 133

原创 硬中断和软中断

本文介绍了中断的分类,以Linux系统为例,介绍了操作系统的硬中断和软中断的实现机制。

2021-08-31 21:51:35 9803 1

原创 单例模式实现

本文介绍了单例模式的几种实现方式并说明了每种方式的优缺点,根据使用场景不同,需要考虑线程安全、性能和资源占用等问题,主要包括饿汉式、懒汉式、双重校验锁方式、基于类初始化方式和枚举式等。

2021-08-31 10:06:37 151

原创 Maven

这篇博客主要介绍了Maven的基础内容,包括Maven的安装和几个核心概念:目录结构、POM文件、仓库、坐标、依赖和常用设置。

2021-01-13 17:29:26 74

原创 Linux常用命令

这篇博客介绍了Linux系统中常用的命令。

2021-01-02 11:53:34 96

原创 Nginx安装

这篇博客介绍了nginx服务器在Linux系统中的安装步骤。

2021-01-01 11:48:05 158

原创 多线程基础-8-锁的优化及注意事项

这篇博客介绍了锁的优化,解释了几点有助于提高锁性能的几点建议,然后介绍了JVM对锁的优化。

2020-12-14 11:03:32 161 1

原创 多线程基础-7-保障线程安全的设计技术

这篇博客从面向对象设计的角度出发,介绍几种保障线程安全的设计技术,这些技术可以使得我们在不必借助锁的情况下保障线程安全,避免锁可能导致的问题及开销。

2020-12-14 11:01:12 99

原创 多线程基础-6-线程管理

这篇博客主要介绍了线程管理的内容,简单说明线程组,捕获线程执行异常和注入Hook钩子线程的内容,最后重点介绍线程池,包括线程池的底层实现和创建线程池的各个参数说明。

2020-12-14 10:59:59 121

原创 多线程基础-5-Lock显示锁

这篇博客主要介绍了显示锁Lock接口的ReentrantLock可重入锁实现类和ReentrantReadWriteLock读写锁实现类,读写锁允许读读共享, 读写互斥,写写互斥。

2020-12-14 10:51:46 120

原创 多线程基础-4-线程间通信

这篇博客主要介绍了线程间通信的几种方式,重点介绍等待/通知机制,以及基于等待/通知机制的生产者-消费者模式,然后简单说明了通过管道实现线程间通信以及ThreadLocal的使用。

2020-12-13 22:03:50 127

原创 多线程基础-3-线程同步

这篇博客主要介绍了线程同步机制,主要对内部锁synchronized和volatile关键字的使用进行说明,然后说明CAS的操作原理,最后介绍了基于CAS实现的原子变量类。

2020-12-13 21:59:53 159

原创 多线程基础-2-线程安全问题

这篇博客主要对线程安全的三个特性:原子性,可见性和有序性进行了说明,然后简单地分析了与线程安全相关的Java内存模型。

2020-12-13 21:52:54 92

原创 多线程基础-1-线程概述

多线程1 线程概述1.1 线程相关概念进程进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是操作系统进行资源分配与调度的基本单位。可以把进程简单的理解为正在操作系统中运行的一个程序。线程线程(thread)是进程的一个执行单元。一个线程就是进程中一个单一顺序的控制流,进程的一个执行分支。进程是线程的容器,一个进程至少有一个线程。一个进程中也可以有多个线程。在操作系统中是以进程为单位分配资源,如虚拟存储空间,文件描述符等。每个线程都有各自的线程栈,自己的寄存器环境,自

2020-12-13 21:47:20 125

原创 JDBC基础笔记

这篇博客介绍了JDBC的基础内容,包括JDBC与驱动的概述,如何配置环境,以及JDBC的编程六步,以用户登陆业务为例,演示了SQL注入现象和解决方法,最后演示了JDBC的单机事务。

2020-11-01 10:13:43 111

原创 MySQL基础整理

1数据库及数据准备1.1 SQL和数据库概述DB:DataBase,数据库,在硬盘上以文件的形式存在DBMS:DataBase Management System,数据库管理系统,常见的有MYSQL、Oracle、SqlServer、DB2…SQL:Strutured Query Language,结构化查询语言,是一门高级语言,标准的SQL适用于所有数据库管理系统。SQL语句在执行时也会进行编译,编译由DBMS完成。三者的关系:DBMS负责执行SQL语句,来操作DB中的数据。1.2 表

2020-10-24 22:21:12 183

原创 StringBuffer详解

这篇博客介绍了StringBuffer和StringBuilder类在拼接字符串时的应用。

2020-10-24 20:32:17 183

原创 String详解

这篇博客主要介绍了String字符串,包括在内存中的存储原理和常用的方法。

2020-10-24 09:11:47 2535 1

原创 抽象类和接口

这篇博客介绍了抽象类和接口,首先说明抽象类的定义和使用,然后介绍了接口在基础语法和在开发中的作用,最后对抽象类和接口作比较说明。

2020-10-16 22:49:41 320

原创 访问控制权限

这篇博客主要介绍了包机制和4种访问权限的使用。

2020-10-16 22:43:13 150

原创 Object类的常用方法

这篇博客介绍了Object类中常用的方法,包括toString(),equal(),finalize()和hashCode()方法,其中toString()和equal()方法一般需要重写。

2020-10-11 17:45:44 77

原创 内部类

这篇博客介绍了内部类和匿名内部类的定义、分类和使用。

2020-10-11 17:38:46 67

原创 Java方法

这篇博客主要介绍了Java方法,包括方法的定义,调用和重载等内容,最后介绍了递归。

2020-10-06 15:51:43 82

空空如也

空空如也

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

TA关注的人

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