- 浏览: 271631 次
- 性别:
- 来自: 杭州
最新评论
-
qiumin333:
所以正数最大位0111 1111,也就是数字127, 负数最 ...
Java byte数据类型详解 -
weizhikang1992:
[b][flash=200,200][list][*]引用[/ ...
Java中AOP技术详解 -
lizhengzy:
[啊啊啊]
Java中AOP技术详解 -
iyaodi:
呃,错了,按位与0xff不等于*(-255)
Java byte数据类型详解 -
iyaodi:
<div class="quote_title ...
Java byte数据类型详解
文章列表
JVM运行时内存分配
- 博客分类:
- java基础知识
Inside JVM运行时数据区
============================================================================================
<一>:方法区:
JVM中被装载的类型信息存储在一个逻辑上被称为方法区的内存中,
JVM在装载完CLASS文件后提取其中的类型信息并将之存储在方法区。
该类型的静态变量同样也存储在方法区中。由于所有的线程共享方法区,
所以对方法区数据的访问必须考虑到线程的同步。
方法区的大小是不固定的,
JVM可以通过装载新类型或者卸载已有类型来动态 ...
Obejct类有一个getClass()方法:
返回此 Object 的运行时类。
返回的 Class 对象是由所表示类的 static synchronized 方法锁定的对象。
public class Art {
Art() {
System.out.println("Art");
System.out.println(getClass().getName());
}
}
public class Drawing extends Art {
Drawing() {
System.out.println(" ...
特殊的分割符号:| * + \ \\
在使用String.split()方法分隔字符串时,分隔符如果是一些特殊字符,可能会得不到我们预期的结果。
jdk doc中说明
public String[] split(String regex)
Splits this string around matches of the given regular expression.
参数regex是一个 regular-expression的匹配模式而不是一个简单的String,他对一些特殊的字符可能会出现你预想不到的结果.
|
String[] aa = "aaa ...
Stream:代表有能力产生数据或接收数据的源。
java stream从行为模式上分为两大类:java.io.InputStream;java.io.OutputStream;
对于所有的InputStream, OutputStream, 从读取,输出数据的单位上分为:
以字节为单位,表示以字节为单位从stream中读取或往stream中写入信息
ByteArrayInputStream ByteArrayOutputStream 把内存中的一段区域作为缓冲区
FileInputStream FileOutputStream 把一个文件作为 ...
instanceof 和 Class.isInstance() 功能完全相同:判断对象是否是一个接口的实例,或者是这个类及其子类的实例。
注意用法:
// 是静态,右边仅仅出现:接口或者类的名字
// 判断blackCircleObject是否是Shape的实例
if(blackCircleObject instanceof Shape){
System.out.println("00000000000000");
}
// 是Class对象的静态方法
// 判断blackCircleObject是否是Shape的实例
if(Sha ...
public static String bytes2HexString(byte[] b) {
String ret = "";
for (int i = 0; i < b.length; i++) {
String hex = Integer.toHexString(b[ i ] & 0xFF);
if (hex.length() == 1) {
hex = '0' + hex;
}
ret += hex.toUpperCase();
}
return ...
ReflectionToStringBuilder
ReflectionToStringBuilder类是用来实现类中的toString()方法的类,它采用Java反射机制(Reflection),
通过reflection包中的AccessibleObject类绕过访问控制而直接存取对象的私有成员。
因此在使用该类时,要注意运行环境的安全策略。
package sample;
import java.math.*;
import java.util.*;
import org.apache.commons.lang.builder.ReflectionToSt ...
Linux load average:中文名:系统平均负载,
定义:在特定时间间隔内运行队列中的平均进程数。
如果一个进程满 足以下条件则其就会位于运行队列中:
它没有在等待I/O操作的结果
它没有主动进入等待状态(也就是没有调用 ...
vmware虚拟机常见优化方法和常见错误
- 博客分类:
- 虚拟化技术
使用很简单,建议参考虚拟机的帮助文档。仅介绍一些优化方法
1)给虚拟机指定固定的最大物理内存
工具栏选择“编辑”-“参数”-“内存”-可以根据实际的使用情况选择“系统内存分配给虚拟机的方式”
2)删除不用的虚拟设备
工具栏选择“虚拟机”-“设置”,选择不会用到的设备删除,比如“音频”,“usb控制器”。
3)安装VMware工具
开启虚拟机,工具栏选择“虚拟机”-“安装VMwae工具”
安装VMwae工具可以增强虚拟机界面显示和鼠标移动效果
4)虚拟机在创建磁盘时选择一次创建
不要使用自己扩充的那种模式,因为在虚拟机自 ...
目前阿里巴巴主要是linux平台,虚拟机使用的是linux的Xen(准虚拟化技术)。
常见四种虚拟化技术:
虚拟技术1-硬件分区:硬件资源被划分成数个分区,每个分区享有独立的CPU、内存,并安装独立的操作系统。主要用在大型服务器上。
虚拟技术2-虚拟机技术:不再对底层的硬件资源进行划分,而是部署一个统一的Host系统。在Host系统上,加装了Virtual Machine Monitor,虚拟层作为应用级别的软件而存在,不涉及操作系统内核。虚拟层会给每个虚拟机模拟一套独立的硬件设备,包含CPU、内存、主板、显卡、网卡等硬件资源,在其上安装所谓的Guest操作系统。最 ...
在JAVA中,如果一个类,方法,属性被设置成protected,表明只能在子类或者同一个命名空间中才能使用,但我们可以巧妙的利用特殊的编码方式,在其他的命名空间下,创造同一个命名空间,从而访问 protected 代表的类,方法,属性。
举例,定义一个Person类,注意:address 是protected static
package test;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
p ...
例如:
Class myclass = Class.forName("org.apache.commons.logging.Log");
myclass.getProtectionDomain().getCodeSource().getLocation();
1. man 对命令提供帮助解释
eg:man ls 就可以查看ls相关的用法
注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。
2. ls 查看目录或者文件的属*,列举出任一目录下面的文件
eg: ls /usr/man
ls -l
d表示目录(directory),如果是一个"-"表示是文件,如果是l则表示是一个连接文件(link)
表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x)。
...
查找顺序:
get和load方法的查找顺序完全相同,不管类的属性配置中:lazy="true"或者lazy="false"
首先在session缓存中查找:loadFromSessionCache()
然后在二级缓存SessionFactory中查找:loadFromSecondLevelCache()
最后从数据库查找:loadFromDatasource()
返回结果:
相同
:get和load方法如果在一级和二级缓存 ...