自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 垃圾回收——判断对象是否存活算法-引用计数法详解

垃圾回收首要的任务就是确定哪些对象是垃圾,哪些对象可进行回收,上节课我们也说过了,判定对象为垃圾对象的两种算法,一种是引用计数法,另一种是可达性分析法,我们本节课就来详细的了解一下什么是引用计数法。引用计数法的思路是,在对象中添加一个引用计数器,当有地方引用这个对象的时候,这个引用计数器的值就加1,当引用失效的时候,这个引用计数器的值就减一。那么,什么时候是引用失效呢?比如说把那个对象的值...

2018-11-24 23:00:03 435 1

原创 垃圾回收——概述

我们之前对Java虚拟机已经有了一定的了解,而且,对Java虚拟机的内存结构以及对象,都有了一定的了解之后,我们来看垃圾回收,我们在写Java应用的时候,内存都是由Java虚拟机来进行管理的,不管是申请内存也好,还是释放内存也好,都不需要我们程序员来进行处理,Java虚拟机就给我们处理完毕了,那么,我们在一般情况下来进行开发的过程中,我们是不需要关注这一块内容的,但是,话又说回来,如果我们遇到了一...

2018-11-24 22:40:07 244

原创 对象在内存中的布局——对象的创建

 我们在任何一个项目中,无时无刻不关注对象的创建,时时刻刻都在创建对象,都在使用对象,那么,我们就从虚拟机的角度来看对象的创建。首先,我们知道,创建对象有多种方式,最直观的一种方式就是通过new关键字来创建对象,而且我们之前也提到过了,我们知道,通过new创建一个对象,那么,那个对象就会存储到堆内存中,那么,下面我们就来具体的看一下对象的创建过程这个图表示的就是一个对象的创建过...

2018-11-18 15:01:00 800

原创 Java内存区域——直接内存和运行时常量池

运行时常量池是属于方法区的一块,class文件中除了有类的版本、字段、方法、接口等描述信息以外,还有一项信息就是常量池,那么,这个常量池是干什么的呢?它就是用来存放编译期生成的各种字面量以及符号引用,这部分内容将在类加载后,进入方法区的运行时常量池中存放。举个例子基本数据类型和抽象数据类型的引用会放到哪里呢?我们之前所讲的内存区域,随着这个方法的运行,会对每一个方法创建一个栈帧,栈帧里面有...

2018-11-18 14:53:13 842

原创 Java内存区域——方法区

 存储虚拟机加载的类信息,那么,这个类信息就有哪些信息呢?这里的类信息其实非常多,比如,类的版本,字段,方法,接口,这些描述信息都是属于类的信息。我们所执行的方法其实就会放到方法区中,除了类的信息之外,就是常量,静态变量,即时编译器编译后的代码等数据。这是我们方法区所存储的一些信息方法区和永久代,其实对于我们现在主流的虚拟机,就是我们最熟悉的hosport,那么在hosport上进...

2018-11-18 14:49:46 704

原创 Java内存区域——堆内存

Java堆就是存储对象的实例,也就是说,堆的作用是非常单一的,其实就是存放对象的实例这么一个功能,当然了,Java虚拟机的Java堆一般来讲是Java虚拟机所管理的最大的一块内存区域,因为我们在一般的Java应用中,会不停的去创建对象,那么,只要是对象的存储,都会放到堆中,而每一个对象它所使用的内存也是不确定的,既然Java堆这一块区域是所管理的最大的区域,那么,也就是垃圾收集器所管理的主要区域,...

2018-11-18 14:48:37 284

原创 Java内存区域——本地方法栈

本地方法栈和虚拟机栈是非常相似的,当然,它们之间也是有不同点的,其中就说,虚拟机栈是为虚拟机执行Java方法服务的,所谓的本地方法栈是为虚拟机执行Native方法服务,说白了,它们的区别也就这一点。其他的,像栈大小的问题,内存溢出的问题,包括栈帧、局部变量表等它们都是完全相同的。...

2018-11-18 14:37:20 407

原创 Java内存区域——Java虚拟机栈

 Java虚拟机栈这块区域的功能,描述的是Java方法执行的动态内存模型。就是说,一个方法的执行以及执行完毕,那么,整个的内存模型就是在Java虚拟机栈中。每个方法执行都会创建一个栈帧,伴随着方法从创建到执行完成。栈帧是用于存储方法可执行的局部变量表、操作数栈、动态链接,方法出口等。每次方法执行,栈帧都会伴随着一个进栈以及出栈的这么一个过程。我们可以简单的描述一下这个过程,这是我们...

2018-11-18 14:12:44 429

原创 Java内存区域——程序计数器

 我们这个图这个图中画的大小并不能表示每一块内存区域的大小,这只是一个概念模型,我们只是通过这个图看一下有哪些区域,不要认为在这个图中区域大就认为它所占的内存区域就大。这个怎么理解呢?比如我们随便写一个代码我们在用这个代码的时候,直接运行就可以了,这里先不说这个方法是怎么加到方法栈中的,当我们这个代码在运行的过程中,它是从上往下一行一行的去执行其实这里就用到...

2018-11-18 13:27:38 643

原创 Java内存区域-简介

我们从学习Java的第一天开始,老师就告诉我们说,Java语言相比较C或者C++,它有一个非常强大的地方,就是它的内存的管理,我们使用Java不需要自己来申请内存、释放内存等等,这一切的工作都由Java虚拟机来帮助我们完成,发现我们在写代码的过程中也就不需要再管理我们的内存了,但是,随着我们学习的深入,我们始终会出现一些莫名的问题,比如说内存的溢出,等等,那么,我们就开始注意到Java虚拟机了,这...

2018-11-18 13:20:14 252

原创 MySQL单表的增删改查操作

今天我们一起回顾MySQL单表的增删改查操作。这里我说的在细一点就是,里面会涉及到对库的操作以及对表结构的操作然后是对表记录的操作。你想要完成这些操作,首先你得对数据库有一定的了解,这里也对数据库进行了一个简单的介绍什么是数据库?数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以通过SQL对数据库中的数据进行增加,修改,删除以及查询操作。数据...

2018-11-16 10:57:44 557

原创 并列句的满分结构

1. 常见的连词and, but该句型推荐写在作文的第一个段,用于描述图画作文的时候使用(并且描述的是两幅图的作文或一幅图两个主体,两个动作的作文) and的替换:likewise、similarly、equally、at the same time、in the meanwhilebut的替换:conversely、by contrast、on the contrary、...

2018-11-14 09:34:59 488

原创 MySQL安装图解

一、MYSQL的安装1、打开下载的mysql安装文件mysql-5.0.27-win32.zip,双击解压缩,运行“setup.exe”。                                2、选择安装类型,有“Typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项,选择“Custom”,按“next”键继续。          ...

2018-11-13 22:03:25 313

原创 比较结构

1、As + adj/adv 的原型 + as + 比较的对象,句尾再加一个which引导的非限定性定于从句对前面的n进行补充说明。本句型推荐写在第一段的最后一句话,引出文章中心时候使用,也可以写在第三段的第一句话,文章中心总结时使用,只要作文中出现adj/adv的地方,都可以写成as…as结构。eg:英语很重要。English becomes as crucial as air ...

2018-11-13 09:49:24 766

空空如也

空空如也

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

TA关注的人

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