慎用Java装箱与拆箱
转自http://xyiyy.javaeye.com/blog/358401
J2SE5.0后提供了自动装箱与拆箱的功能,此功能事实上是编译器来帮您的忙,编译器在编译时期依您所编写的方法,决定是否进行装箱或拆箱动作。例如:
Integer i = 100;
相当于编译器为您作以下的语法编译:
Integer i = new Integer(100);
虽然此功能很方便,但在程序运行阶段您得了解Java的语义。如下面的程序能编译通过:
Integer i = null;
int j = i;
此程序编译时通过,但运行时会有错误。因为这种写法相当于:
Integer i = null;
int j = i.intValue();
由于i实际上没有参考至任何的对象,所以不能操作intValue()方法,上面程序运行时会出现NullPointerException错误。
自动装箱、拆箱的功能提供了方便性,但隐藏了一细节,所以必须小心。如下列代码1:
public class AutoBoxDemo2
{
public static void main(String[] args)
{
相关文档:
Oracle中可以调用Java的代码,一般通过两种方式进行调用,一个是直接将Java代码写在Oracle内部,另外一种是将编译好的class文件载入到Oracle中。
-A-
1、在SQLPlus中创建Oracle中的Java类与方法(方法必须是静态公有方法)
create or replace and compile java source named hello as
public class Hello {
pu ......
import java.awt.Image;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import javax.imageio.ImageIO;
public class createXml
{
public static boolean writeXml(String path,String dir,String wpath,String wname)
{
File[] files = ReaderListFiles(path);
boo ......
/*
ArrayList是最常用的List实现类,内不是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能含有“空隙”,当数组大小不满足时需要增加存储能力,就要将已有数组数据复制到新的存储空间中。当从ArrayList的中间位置插入或者删除元素时,需要对数组进行复制、移动,代价比较高。因 ......
Java json lib
根据http://www.javaeye.com/topic/561368谈到的一个jackson的json序列化工具性能比json-lib等要好
无论是在低并发还是高并发的情况下,时间性能上,jackson使用重用ObjectMapper方式大大优于使用json-lib方式,甚于jackson使用非重用ObjectMapper方式也略优于json-lib方式。另外也可以看出,jackson在重用 ......
Hibernate
Hibernate
是一个优秀的持久化框架
瞬时状态,持久状态
ORM
:对象关系映射,完成对象数据到关系数据的映射机制
使用
Hibernate
的三项准备工作是:
1、
添加
hibernate
库
......