关闭
当前搜索:

[置顶] JVM--详解类加载机制

这篇博客—干货很多!!!Java虚拟机的体系结构前面我们探讨了Class文件的结构,如果你还没有学习,将不利于这部分知识的吸收与掌握,所以请移步:JVM–Class类文件结构(一)学习一个东西之前,我们务必要知道,这东西大概是干什么的,有什么作用。为了更清楚的阐释类加载机制到底是干什么的,我先将JVM的结构图贴给大家:如上图,我们要学的类加载机制就是要搞清楚类加载器是如何找到指定的Class文件以及...
阅读(584) 评论(1)

[置顶] MySQL数据库--外键约束及外键使用

什么是主键、外键关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键。比如: 学生表(学号,姓名,性别,班级) 其中每个学生的学号是唯一的,学号就是一个主键 课程表(课程编号,课程名,学分) 其中课程编号是唯一的,课程编号就是一个主键 成绩表(学号,课程号,成绩) 成绩表中单一一个属性无...
阅读(298) 评论(0)

[置顶] MySQL数据库--索引的说明、使用、及其注意事项

什么是索引索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。如果没有索引,执行查询时MySQL必须从第一个记录开始扫描整个表的所有记录,直至找到符合要求的记录。表里面的记录数量越多,这个操作的代价就越高。如果作为搜索条件的列上已经创建了索引,MySQL无需扫描任何记录即可迅速得到目标记录所在的位置。如果表有1000个记录,通过索引查找记录至少要比顺序扫描记录快100倍。...
阅读(289) 评论(0)

[置顶] JVM--从volatile深入理解Java内存模型

在上一篇博客JVM–解析Java内存区域及数据的内存分配与线程安全之间的一些联系中也说到了,想要理解volatile关键字,我们需要掌握Java虚拟机运行时数据区的相关知识,但是这还不够,只有理解了Java的内存模型,我们才能开始讲述volatile,而Java虚拟机运行时数据区是掌握Java内存模型的基础,所以如果你还没有看上一篇博客,请点击上方链接~~~引言既然本节讲述volatile关键字,那...
阅读(599) 评论(3)

[置顶] JVM--解析Java内存区域及数据的内存分配与线程安全之间的一些联系

最近一直在看《Java多线程编程核心技术》的第二章,主要讲的是线程共享变量与线程私有变量以及如何写出线程安全的代码。看这部分一开始没太注意,只是记住了一条规则,“类中的成员变量,也叫实例变量,也叫全局变量,它是非线程安全,是所有线程共享的变量,定义在方法中的私有变量是线程安全的,是每个线程私有的”。很好理解不是吗,然后一帆风顺的看到了关于volatile这部分的知识,看过之后我陷入了凌乱。。。关于这...
阅读(939) 评论(4)

[置顶] Java多线程--详解this与Thread.currentThread()的区别

注:本系列博客参考《Java多线程编程核心技术》,主要是对书上的知识点进行总结,并记录学习过程。一直对并发这块比较感兴趣,也到了系统学习Java多线程的时间。目前所学习的书籍是《Java多线程编程核心技术》,买回来之后听说这本书不怎么样,豆瓣评分也就7点几,目前读完了第一章,感觉确实不是很好,但是也不算太坑,总的来说还是可以入手的。好了,废话不多说,开始正题。首先我们来看一份代码:public cl...
阅读(781) 评论(5)

[置顶] 排序--堆排序分析与实现

何为堆一个数组序列我们可以将其用完全二叉树或近似完全二叉树(不是满二叉树的完全二叉树)表示出来,当数组下标为i时,它的父节点为(i-1)/2,左孩子为(2i+1),右孩子为(2i+2),这种对应关系说明数组下标为0的地方也要存储数据。(关系完全二叉树和满二叉树我在这里不做介绍)堆是在完全二叉树的基础上递归定义的,堆分为大顶堆和小顶堆。 大顶堆:根节点的数值大于孩子节点,完全二叉树的左右子树同时满...
阅读(218) 评论(0)

JVM--深入剖析继承与多态实现原理(合集篇)

由于我将继承与多态的讲解分成了三篇博客,所以在这篇博客给出三篇博客总的链接,阅读顺序由第一篇至第三篇就可以。第一篇:主要讲解分派:JVM–详解虚拟机字节码执行引擎之静态链接、动态链接与分派第二篇:主要讲解invokevirtual指令:JVM–从JVM层面深入解析对象实例化、多态性实现机制 第三篇:主要讲解继承与方法表: JVM–再谈继承与多态相信这三篇博客会给你带来惊喜~~~...
阅读(190) 评论(0)

JVM--再谈继承与多态

此文试图从JVM层面深刻剖析Java中的继承与多态,知识面覆盖class字节码文件,对象的内存布局,JVM的内存区域、分派,方法表等相关知识,内容整合于大量博客,知乎,书籍,并加上博主自己的理解,相信看完会对你大有裨益! 即使博主在JVM专栏已经有两篇博客对多态的实现机制进行了分析,但是今天在分析了一波继承的原理之后,发觉之前对于多态的讲述还不完整,在查阅的相关资料之后,决定在这一篇博客真正的将...
阅读(82) 评论(0)

JVM--从JVM层面深入解析对象实例化、多态性实现机制

之前一直觉得对于字节码的执行过程,对象的实例化过程,多态的实现机制没有进行深刻的探讨,只是进行了简单的总结,一直也苦于没有找到恰当的例子,所幸今天看到一前辈的博客,对其进行钻研之后,终于解决了这个历史遗留问题。 首先贴出前辈的原文链接,并且这篇博客会引用其中的一些内容:Java重写方法与初始化的隐患 问题的还原 先来看一份代码: public class SuperClass...
阅读(192) 评论(0)

JVM--解析运行期优化与JIT编译器

JVM开发团队一直在努力,缩小Java与C/C++语言在运行效率上的差距。本篇博客,我们来谈一谈JVM(HotSpot)为了提高Java程序的运行效率,都实现了哪些激动人心的技术~JIT编译器的引入首先我们这篇文章中所说的编译器都是指JVM的组成部分之一—即时编译器(JIT),与生成Java字节码的javac编译器要区分开来。你也许想说,为什么要引进JIT编译器?很好的问题。我们知道,javac将程...
阅读(399) 评论(0)

JVM--浅谈垃圾收集机制

谈起GC,应该是让Java程序员最激动的一项技术,我相信每个Java程序员都有探究GC本质的冲动!本篇博客围绕三个问题展开: 1.哪些内存需要回收? 2.什么时候回收? 3.如何回收? 哪些内存需要回收首先回答第一个问题:不再使用的对象需要进行回收,不使用的类也有可能回收。那么我们如何判断一个对象不再使用呢?主要有以下两种方法。引用计数算法定义:给对象添加一个引用计数器,每当有一个地...
阅读(575) 评论(1)

JVM--剖析类与对象在JVM中从生存至死亡

前面学习了Class文件结构、类的加载机制、字节码执行引擎、对象的创建与销毁,所以我准备从一个Java代码进行切入,详细剖析它的生命历程,将所学的知识真正的用起来,也算是对前面所学的知识进行一个系统的总结。我们以这份Java代码为例,来剖析一个Java程序的生命历程:interface ClassName { String getClassName(); }class Company imp...
阅读(216) 评论(0)

JVM--详解创建对象与类加载的区别与联系

在前几篇博客中,我们探究了.class文件的本质,类的加载机制,JVM运行时的栈帧结构以及字节码执行时对应操作数栈以及局部变量表的变化。 如果你已经掌握了这些东西,你现在应该会有一种感觉,给你一个Java代码,你可以从JVM的层面上将这个类从javac编译成.class文件开始,到使用java命令运行这个Class文件,然后这个类的运行过程是怎么样的,你可以解释清楚。 但是等等,好像少了点什么...
阅读(365) 评论(0)

JVM--详解虚拟机字节码执行引擎之静态链接、动态链接与分派

这篇博客主要带你认识何谓静态链接、动态链接。并且会讲述JVM中分派的知识,让你对Java中的多态实现机制有一个浅显的认识。 前言 从接触Java语言的第一天起,往后,我相信你一定听过什么动态链接啊,动态扩展啊,静态链接啊,它和C++相比有哪些优缺点啊… …如果你只是听说而没有探究过他们,也许你现在仍没办法说出Java语言到底有什么优缺点。 我们知道class文件是源代码经过编译后得到...
阅读(733) 评论(0)

JVM--详解虚拟机字节码执行引擎之栈帧结构

本篇博客信息量依旧庞大!前言在讨论本文的主题之前,我们先来思考一下:什么是虚拟机字节码执行引擎?它有什么作用?在说明这个问题之前,我们先来想想之前我们已经学习过的class文件与类加载机制。当一个Java程序写好之后,我们使用javac命令对其进行编译,产生的虚拟机字节码存储在class文件中,我在JVM–解析Class类文件结构一文中详细分析了class文件中字节码的存储格式及其组成。然后我们紧接...
阅读(586) 评论(0)

GitHub--重装系统后关联以前的GitHub

由于系统重起了,当然本地的仓储和SSH生成的密钥就都没有了,这时如何在本地pull自己在GitHub上的仓储呢?由于系统重装,~/.ssh文件肯定就没有了,这时候就需要重新生成公钥和密钥。ssh-keygen -t rsa -C “your_email@example.com”Enter file in which to save the key (/home/XXX/.ssh/id_rsa):...
阅读(153) 评论(2)

Web后台--聊一聊Cookie

原文链接:聊一聊 cookie...
阅读(76) 评论(0)

JavaScript--彻底理解js中this的指向

原文链接:彻底理解js中this的指向...
阅读(73) 评论(0)

JavaScript--函数声明、函数表达式、匿名函数、立即执行函数

原文链接:深入理解javascript中的立即执行函数(function(){…})()...
阅读(74) 评论(0)
86条 共6页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:82674次
    • 积分:1658
    • 等级:
    • 排名:千里之外
    • 原创:73篇
    • 转载:13篇
    • 译文:0篇
    • 评论:77条
    博客专栏
    最新评论