自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 jvm-本地方法栈

本地方法栈和上篇文章讲到的本地方法接口是一起使用的,本地方法栈用于管理本地方法的调用,可以使用本地的内存也可以使用本地的寄存器,不受jvm虚拟机的限制,也可以访问虚拟机内部的运行时数据区,它和虚拟机拥有同样的权限,但并不是所有的jvm都支持本地方法栈. ...

2021-04-14 18:40:20 67

原创 jvm-本地方法接口

相信大家在看一些java源码的时候会发现有一些方法上使用着native关键字,这个关键字修饰的方法其实就是一个java调用非java代码的接口 ,java的底层有一部分是使用c或c++来实现的,也是早期java发展时为了和当时风头正盛的c和c++语言产生更多的联合,就有了这个本地方法调用,native关键字不能与abstract关键字共用,现在该方法使用的越来越少了,除非是与硬件有关的应用. ...

2021-04-14 16:57:10 79

原创 jvm-虚拟机栈

虚拟机栈位于运行时数据区,它是线程的私有的,每一个线程都会有一个虚拟机栈,不存在GC,但存在Error,为什么不存在GC?是因为它本身是一个栈结构,栈结构的压栈弹栈操作是直接可以将垃圾的问题解决,虚拟机栈中每个栈会有一个方法,栈的单位为栈帧,栈帧中包含:操作数栈,本地变量表(局部变量表),动态链接,方法返回地址和附加信息,虚拟机栈的栈顶为当前正在执行的方法,虚拟机栈的大小在windows中是取决于jvm的大小,但是安卓 mac等大小是固定的,通过-Xss1024k的操作指令可以设置固定的大小,下面对虚拟机栈

2021-04-14 16:30:18 83

原创 jvm 运行时数据区(Runtime Data Area) 之程序计数器

jvm 运行时数据区(Runtime Data Area) 之程序计数器 Program Counter Register(pc寄存器)又称程序计数器,位于jvm中的运行时数据区,程序计数器是一块小内存,小到可以忽略不计,它的运算速度是最快的,为什么呢? 最重要的原因,是因为它本身内存小,只存储jvm中的一条操作指令地址,当虚拟机执行到某一个操作指令时,会将下一条指令地址存到程序计数器中,当上一条程序结束后,去程序计数器取地址,执行引擎再根据地址找到对应的指令去执行相应指令.那么为什么要有程序计数器呢?要解

2021-04-12 19:50:17 103

原创 构造方法、继承、抽象类、模板设计模式

构造方法、继承、抽象类、模板设计模式 昨天我们讲:定义一个类,类中可以定义两种成员:1).成员属性、2).成员方法 第一章:构造方法【重点】 1.1 构造方法的概念 1).“构造方法”: 构造:指“创建对象—new 对象”; 方法:指“一个方法”。 “构造方法”:指在创建对象时,会被调用的一个方法。 Student stu = new Student();//Student()实际上就是去调用一个“构造方法” 2).在Java中,“任何类”都有“构造方法”,如果我们定义类时,不定义构造方法,编译器会自动为

2020-09-28 16:55:21 291 1

原创 类、对象、封装

类、对象、封装 第一章:基础语法回顾 1.1 基础语法回顾-if语句 1).格式一: if(布尔表达式){ //if体语句,如果“布尔表达式”为true,执行这里 } 2).格式二: if(布尔表达式){ //如果“布尔表达式”为true,执行这里 }else{ //如果“布尔表达式”为false,执行这里 } 3).格式三: if(布尔表达式1){ //如果“布尔表达式1”为true,执行这里 }else if(布尔表达式2){ //如果“布尔表达式1”为false,而“布尔表达式2”为true,执行这里

2020-09-27 20:52:38 263

空空如也

空空如也

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

TA关注的人

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