`
qilixiang012
  • 浏览: 202975 次
文章分类
社区版块
存档分类
最新评论
文章列表
新生代 GC(Minor GC):指发生在新生代的垃圾收集动作,因为 Java 对象大多都具 备朝生夕灭的特性,所以 Minor GC 非常频繁,一般回收速度也比较快。 老年代 GC(Major GC / Full GC):指发生在老年代的 GC,出现了 Major GC,经常 会伴随至少一次的 Minor GC(但非绝对的,在 ParallelScavenge 收集器的收集策略里 就有直接进行 Major GC 的策略选择过程) 。MajorGC 的速度一般会比 Minor GC 慢 10 倍以上。 其中Monor GC如下图所示 虚拟机给每个对象定义了一个对 ...
第一步:下载resin,放到D:\resin-3.1.12。 第二步:eclipse新建工程:resin 第三步:配置工程的启动类。 第四步:配置启动resin所需要的配置文件和参数。 第五步:添加resin的jar包。 第六步:修改resin
Resin4配置文件发生了较大变化,分为: app-default.xml web应用配置 cluster-default.xml 集群配置 resin.xml resin.properties 会被修改的变量 一.删除/注释resin社区版本不支持的功能1.health:修改resin.xml, 删除
“分天下为三十六郡,郡置守,尉,监” —— 《史记·秦始皇本纪》 所有用Maven管理的真实的项目都应该是分模块的,每个模块都对应着一个pom.xml。它们之间通过继承和聚合(也称作多模块,multi-module)相互关联。那么,为什么要这么做呢?我们明明在开发一个项目,划分模块后,导入Eclipse变成了N个项目,这会带来复杂度,给开发带来不便。 为了解释原因,假设有这样一个项目,很常见的Java Web应用。在这个应用中,我们分了几层: Dao层负责数据库交互,封装了Hibernate交互的类。 Service层处理业务逻辑,放一些Service接口和实 ...
Maven 多模块项目在eclipse下面热部署,即你可以体验下无论你修改整个项目里面的任何模块的代码,都不需要用maven打包就可以看到效果, 1、首先准备好创建一个maven多项目的代码,准备好一个eclipse,一个tomcat,什么java环境,tomcat环境我就不多说了,如果这个你都没有配好就别往下看了, 2、创建项目,mvn archetype:generate -DgroupId=com.laoshuisheng -DartifactId=test -Dversion=1.0 创建成功后到pom.xml文件里面修改pom.xml [xhtml] ...
常量池也可以理解为编译常量。而编译常量只加载类就可以使用了,但是不执行类的初始化。 在使用成员变量的时候,要区分一下当前的类是已经加载状态还是已经初始化状态。如下面的例子: import java.util.Random; class FinalClassA { public static final int x =6/3; static { System.out.println("FinalClassA static block"); } } class FinalClassB { public static final int x =new Rand ...
常量池(constant pool)指的是在编译期被确定,并被保存在已编译的.class文件中的一些数据。它包括了关于类、方法、接口等中的常量,也包括字符串常量。 public class TestConsntPool { public static void main(String [] args){ String s0="kvill"; String s1="kvill"; String s2="kv" + "ill"; System.out.println( s0==s1 ); ...
1 总体结构 模板(FTL 编程)是由如下部分混合而成的: Text 文本:文本会照着原样来输出。 Interpolation 插值:这部分的输出会被计算的值来替换。插值由${和}所分隔(或者#{和},这种风格已经不建议再使用了)。 FTL tags ...
1 什么是数值? 你所知道的来自于每天所使用的数字,比如 16,0.5 等这些用语就是数值的示例,也就是数字。在计算机语言中,这些用语有着更广泛的含义,比如数值并不一定是数字值. 2 类型 标量: 字符串:如果想在模板中直接给出字符串的值,而不是使用数据模型中的变量,那么将文本写在引号内即可,比如”green mouse”或者’green mouse’。 数字:整数和非整数是不区分的,只有单一的数字类型。 布尔值:布尔值代表了逻辑上的对或错(是或否)。 日期: 精确到天的日期(通常指的是“日期”),比如 April 4, 2003每天的时间(不包括日期部分),比如 10: ...
数据模型 scalars标量:从根 root 开始指定它的路径,每级之间用点来分隔。 如:whatnot.fruits sequences 序列:使用数组的方括号方式来访问一个序列的子变量。 如:animals[0].name,whatnot.fruits[1] 总结: 数据模型可以被看做是树状结构的。 ...
将一个方法的调用同方法主体连接到一起称为“绑定”。如果在程序运行前执行绑定,有编译器决定方法调用的程序,称为“早期绑定”或“静态绑定”。如果绑定过程在程序运行期间进行,以对象的类型为基础,则称为“后期绑定”或“动态绑定”。 如果一种语言实现了后期绑定,同时必须提供一些机制,可以在运行期间判断对象的实际类型,并分别调用适当的方法,即编译器此时仍然不知道对象的类型,但方法调用机制能够自己去调查,找到正确的方法体。Java方法的执行主要采用动态绑定技术,在程序运行时,虚拟机将调用对象实际类型所限定的方法。 Java方法调用过程主要经历了以下的过程: (1)编译器查看对象变量的声明类型和方法名,通 ...
在特定的情况下,我们可以把子类转换成父类的“实例”,这就是向上转型;相反,我们也可以把父类转换成子类的“实例”,这就是向下转型。向上转型是安全的,向下转型则不然。 假设我们有三个类:bird,parrot,swallow,后两个类继承了bird类。 向上转型 class Bird { public void fly() { System.out.println("Bird.fly()"); } public void eat() { System.out.println("Bird.eat()"); } } c ...
将一个方法的调用同方法主体连接到一起称为“绑定”。如果在程序运行前执行绑定,有编译器决定方法调用的程序,称为“早期绑定”或“静态绑定”。如果绑定过程在程序运行期间进行,以对象的类型为基础,则称为“后期绑定”或“动态绑定”。 程序绑定的概念:绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。对java来说,绑定分为静态绑定和动态绑定;或者叫做前期绑定和后期绑定.静态绑定:在程序执行前方法已经被绑定(也就是说在编译过程中就已经知道这个方法到底是哪个类中的方法),此时由编译器
方法重写的约束条件: 第一:子类方法必须和父类方法在名称,参数签名(参数个数,类型和顺序)和返回类型一致。 第二:子类方法不能缩小父类方法的权限,例如父类中为public方法不能在子类为private方法。 第三:子类方法不能比父类方法抛出更多的异常。 第四:父类的private方法不能被子类重写。
强引用,这是Java程序中最常见的引用方式,程序创建一个对象,并把这个对象赋值给一个引用变量,这个引用变量就是强引用。 强引用有以下特征: 强引用可以直接访问目标对象。 强引用所指向的对象在任何时候都不会被 ...
Global site tag (gtag.js) - Google Analytics