- 博客(18)
- 收藏
- 关注
原创 Java优雅关服
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、钩子的添加和调用流程1.Runtime#addShutdownHook2.ApplicationShutdownHooks#add3.Shutdown#add4.Shutdown#sequence5.Shutdown#runAllFinalizers二、注册信号监听1.Terminator#setup2.System#initializeSystemClass前言java中的Runtime.addShutdownHoo
2020-12-25 18:34:43 203
原创 Java热更新
本文的目标1、基于公司一个服务端采用java开发的游戏项目,探索一个合适的服务端热更新[1]方案。2、讨论java运行时类修改[2]技术。在本文范畴内的一些词汇的定义1、热更新:在不造成用户可感知的中断或响应延迟的前提下完成后端服务迭代更新的过程。2、java运行时类修改:对内存中的class进行任意的改动,包括增加、删除、修改,并且把改动同步到所有受影响class的已创建对象上,后续创建的对象基于最新的class。(目前java是不支持的这种无限制的改动)本文的背景我现在负责的项目是个h5的
2020-11-27 17:59:30 2195
原创 Instrumentation-Java代码替换核心接口
在java.lang.instrument中对核心类Instrumentation的两种使用方式说明如下* <P>* There are two ways to obtain an instance of the* <code>Instrumentation</code> interface:** <ol>* <li><p> When a JVM is launched in a way that indicates
2020-11-27 00:26:20 373 1
原创 Java基础
引言目前出来搬砖两年了,本文是自己对Java基础知识的一个回顾,也是对我之前做的脑图的补充,一般是先给出我对这个知识点的理解然后做一定的展开讲解。不保证我的理解正确,不保证我的理解正确,不保证我的理解正确!有不同见解的欢迎留言指教这是我做的百度脑图,我会围绕脑图里的知识点来讲百度脑图-Java基础Object类Object类是所有类的父类,有几个final方法wait、notify、...
2019-05-22 00:05:46 130
原创 CentOS7架设DNS服务器(Bind)
在架设前先把相关资料看明白了再动手操作,推荐鸟哥私房菜配置文件在修改之前应该先备份一份 cp [目标文件] [备份文件](备份是个好习惯 :)理解Chroot的概念需要的配置文件 1 named.conf (主要配置文件) /etc/named.conf 2 named.centos.vbird(主要的centos.vbird的正解文件 文件名由named.conf定义) /var/nam
2016-12-09 11:34:50 620
原创 Exception
java的哲学之一就是要让糟糕的代码也可以运行Exception需要强制处理的是非编译期的 CheckException 不强制要求处理的是 RuntimeException错误的理想处理时间是编译期,但是不是所有的错误都可以在编译期检测到的,这些错误就需要通过某些形式把错误的发生点和相关信息传递给恰当的接收者来处理从错误中恢复对于每个程序来说都是一个基本要求(健壮性),但健壮性对java来说
2016-12-09 11:04:00 242
原创 Centos某一目录容量不足需要扩容
通常类和方法只能与具体的类型工作,原始类型或类类型,如果你要编写可以跟很多类型工作的类,那么这就很受限制。面向对象语言实现泛化的方法就是通过多态。任何使用一个具体类型的地方,用基类会更有扩展性。有时单继承过于受限,如果一个方法的参数是一个接口而不是一个类那么限制就放松为所有实现了这个接口的类,包括你还没创建的。有时连接口觉得太受限制,因为一个接口还要求你的代码跟具体的一个接口协同工作,如果你可以指定
2016-12-09 10:47:08 787
原创 7虚拟机类加载机制
加载,验证,准备,初始化和卸载这5个阶段开始的顺序是确定的。Java虚拟机规范没有规定什么时候开始类的加载阶段,这可以由虚拟机具体实现来自由把握,但是对于初始化阶段,虚拟机规范严格规定了有且只有5种情况必须立即对类进行初始化。 1 遇到new gestatic putstatic或invokestatic这4个字节码指令时,如果类没有进行过初始化,则需要先触发其初始化。生成这四条指令的最常见jav
2016-06-14 14:29:02 325
原创 6类文件结构
6.2无关性的基础:1 虚拟机的设计与实现是考虑了支持多种语言的。 2 虚拟机不绑定任何包括java在内的语言,只与class文件关联。 3 任何一种功能性语言都可以使用编译器把程序编译为一个被虚拟机接受的有效class文件 4 多条字节码命令组成一个java语言的变量,关键字,运算符,所以字节码命令所能提供的语义描述能力比java语言本身强,这为实现一些有别于java语言特性提供了基础。6.
2016-06-14 14:24:10 312
原创 3 垃圾收集器与内存分配策略
概述:程序计数器,虚拟机栈,本地方法栈三个区域随着线程而生,随着线程而灭;栈中的栈帧随着方法的进入和退出而有条不紊地执行着出栈和入栈操作。每个栈帧中分配多少内存基本上是在类结构确定下来时就已知的,因此这几个区域的内存分配和回收都具备确定性,在这几个区域内就不需要过多考虑回收的问题没因为方法结束或者线程结束时,内存自然就跟着回收了。而java堆和方法区则不一样,一个接口中的多个实现类需要的内存可能不一
2016-06-14 14:22:38 362
原创 # 2 java内存区域与内存溢出异常
2 java内存区域与内存溢出异常2.2运行时数据区域Java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁时间,有的区域随着虚拟机进程的启动而存在,有些则依赖用户线程的启动和结束而建立和销毁。1)程序计数器 一块较小的内存空间,可以看做是当前线程所执行的字节码的行号指示器。字节码解释器工作时就是通过改变计数器的值来选取下一条需
2016-06-14 14:18:27 353
原创 chapter 14 类型信息
看到反射这方面内容时,只通过编程思想上的内容理解起来还是比较不够具体,在网上翻看笔记很容易就理解了。看到一篇写的比较好的文章 以下多数内容摘自 孤旅者http://www.cnblogs.com/gulvzhe/archive/2012/01/27/2330001.html感谢作者的文章结合文章和书上的内容记录下自己对java反射机制的理解:概括:Java反射机制是在运
2016-03-29 17:43:39 360
原创 用DFS计算pre和post
Description给出一个有向图,从1号顶点出发,求该图每个顶点的pre值和post值。为了使本题的答案唯一,规定:当一个顶点发出多条弧的时候,按顶点的编号,从小到大进行遍历。温馨提示:时钟从1开始。Input第一行给出这个图的顶点数n ( 1 ≤ n ≤ 1000 )第二行给出这个有向图的边数 e ( 0 ≤ n ≤ 100000 )第三行开始,共e行,每行两
2015-12-06 20:02:32 2448
原创 关于编码
今天在用asp.net 做网站的时候遇到乱码,感觉这些基础问题不能放过 不然以后坑我不是两三次 结果坑越挖越深 一个下午的时间没了 不过通过在网上查各路大神的经验总算是知道个大概了 网上的经验都很多 我就不再赘述了 (反正写了也没别人好....)以下是我看到的觉得写的比较好的几篇 大家看看应该可以理解了http://blog.csdn.net/tomysea/article/details/
2015-11-07 22:30:00 305
原创 大整数相乘 分治法
package 大整数相乘分治;import java.math.BigInteger;import java.util.Scanner;public class Main { static int BitCount(BigInteger x){ int i=x.toString(2).length(); return i; } static BigInteger mu
2015-10-27 00:33:30 609
原创 数据库知识整理总结
最近在使用sql server学习asp.net开发网站涉及到数据库的一些操作感觉很多概念不理解,便重新看了看大二时候学的数据库原理整理下几个重要的概念:数据库:一个相互关联的数据集合数据库管理系统:数据库和一组操作这个数据库的程序数据独立性分为物理独立性和逻辑独立性。物理独立性:应用程序与数据库中数据的物理结构是相互独立的,这样即使数据库的物理存储发生改变 只要逻辑结构不变应
2015-10-20 11:33:30 346
原创 用费马小定理做素性测试
自大一以后再次用C,现在做一道OJ题用费马小定理判断素性 顺便把过程发上来吧 总结记录一下#define _CRT_SECURE_NO_WARNINGS#include#include #include long long pow(long long x, long long y, long long n){ // 递归求a^(n-1)mod n的值 if (y == 0)ret
2015-10-12 23:10:42 2826
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人