易截截图软件、单文件、免安装、纯绿色、仅160KB

Java中对象的生命周期

  (1) 对象生命周期的开始
             对象生命周期开始时,需要为对象分配内存,并且初始化它的实例变量;
           对象生命周期结束
             Java虚拟机的垃圾回收线程回收对象的内存。
  (2) 创建一个对象指创建一个类的实例,前提是类被初始化,对象可以被显式或者隐式创建,显式创建对象有以下几种方式
           a. new语句创建对象
           b.利用反射机制,调用java.lang.Class的forName()和java.lang.reflect.Constructor的newInstance()方法
              Class objClass = Class.forName("Customer");
Customer c = (Customer)objClass.newInstance();
           c.调用对象的clone()方法
           d.运用反序列化方法,调用java.io.ObjectInputStream类的readObject()方法
  (3)使用new或者反射的方法时,会执行类的构造函数,使用对象的clone方法,不会调用构造函数。
  (4)关于clone()
          a. Object类中声明为protected类型,如果Object的子类想对外公开clone()方法,需要扩大访问权限;
          b. 使用clone()方法需要实现Cloneable接口;
          c.调用clone()方法会创建一个复制的对象,这个对象和原来的对象具有不同的内存地址,但是他们的属性值相同;
  (5)隐式地创建对象
          a. java命令的命令行参数
          b. String类型的直接数对应一个String对象
          c. 字符串操作符“+”结果为一个新的String对象
      &


相关文档:

Java中throw和throws的区别

系统自动抛出的异常
所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,并且 Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示,或者修正后使程序继续执行。
语句抛出的异常
用户程序自定义的异常和应用程序特定的异常,必须借助于 throws 和 throw 语句来定义抛出异常。
throw是语句抛出 ......

Java语言中的关键字讲解(三)volatile的用途

关于volatile
我们知道,在Java中设置变量值的操作,除了long和double类型的变量外都是原子操作,也就是说,对于变量值的简单读写操作没有必要进行同步。
这在JVM 1.2之前,Java的内存模型实现总是从主存读取变量,是不需要进行特别的注意的。而随着JVM的成熟和优化,现在在多线程环境下
volatile关键字的使用变得非常重 ......

Java中类的生命周期

  Java虚拟机管理类和对象的生命周期;
(1)类的生命周期从类被加载,连接,初始化开始,到类被卸载结束;
(2)类处于生命周期时,它的二进制数据位于运行时方法区内,在堆区还有一个相应的描述类的Class类的对象;
(3)只有当类处于生命周期中时,Java程序才能够使用它。
1.Java虚拟机及程序的生命周期
(1) ......

JAVA排序汇总 java排序算法

 package com.softeem.jbs.lesson4;

import java.util.Random;

/**

* 排序测试类

* 排序算法的分类如下:

* 1.插入排序(直接插入排序、折半插入排序、希尔排序);

* 2.交换排序(冒泡泡排序、快速排序);

* 3.选择排序(直接选择排序、堆排序);

* 4 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号