finalize()方法如何在Java项目中使用-创新互联

创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!

创新互联主要为客户提供服务项目涵盖了网页视觉设计、VI标志设计、营销推广、网站程序开发、HTML5响应式重庆网站建设公司手机网站开发、微商城、网站托管及网站维护、WEB系统开发、域名注册、国内外服务器租用、视频、平面设计、SEO优化排名。设计、前端、后端三个建站步骤的完善服务体系。一人跟踪测试的建站服务标准。已经为石凉亭行业客户提供了网站推广服务。

这期内容当中小编将会给大家带来有关finalize()方法如何在Java项目中使用,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

 Java中finalize()详解

  在程序设计中,我们有时可能希望某些数据是不能够改变的,这个时候final就有用武之地了。final是Java的关键字,它所表示的是“这部分是无法修改的”。不想被改变的原因有两个:效率、设计。使用到final的有三种情况:数据、方法、类。

       一、 final数据

       有时候数据的恒定不变是很有用的,它能够减轻系统运行时的负担。对于这些恒定不变的数据我可以叫做“常量”。“常量”主要应用与以下两个地方:

       1、编译期常量,永远不可改变。

       2、运行期初始化时,我们希望它不会被改变。

       对于编译期常量,它在类加载的过程就已经完成了初始化,所以当类加载完成后是不可更改的,编译期可以将它代入到任何用到它的计算式中,也就是说可以在编译期执行计算式。当然对于编译期常量,只能使用基本类型,而且必须要在定义时进行初始化。

       有些变量,我们希望它可以根据对象的不同而表现不同,但同时又不希望它被改变,这个时候我们就可以使用运行期常量。对于运行期常量,它既可是基本数据类型,也可是引用数据类型。基本数据类型不可变的是其内容,而引用数据类型不可变的是其引用,引用所指定的对象内容是可变的。

public class Person { 
  private String name; 
 
  Person(String name){ 
    this.name = name; 
  } 
   
  public String getName() { 
    return name; 
  } 
 
  public void setName(String name) { 
    this.name = name; 
  } 
} 
 
public class FinalTest { 
  private final String final_01 = "chenssy";  //编译期常量,必须要进行初始化,且不可更改 
  private final String final_02;        //构造器常量,在实例化一个对象时被初始化 
   
  private static Random random = new Random(); 
  private final int final_03 = random.nextInt(50);  //使用随机数来进行初始化 
   
  //引用 
  public final Person final_04 = new Person("chen_ssy");  //final指向引用数据类型 
   
  FinalTest(String final_02){ 
    this.final_02 = final_02; 
  } 
   
  public String toString(){ 
    return "final_01 = " + final_01 +"  final_02 = " + final_02 + "  final_03 = " + final_03 + 
        "  final_04 = " + final_04.getName(); 
  } 
   
  public static void main(String[] args) { 
    System.out.println("------------第一次创建对象------------"); 
    FinalTest final1 = new FinalTest("cm"); 
    System.out.println(final1); 
    System.out.println("------------第二次创建对象------------"); 
    FinalTest final2 = new FinalTest("zj"); 
    System.out.println(final2); 
    System.out.println("------------修改引用对象--------------"); 
    final2.final_04.setName("chenssy"); 
    System.out.println(final2); 
  } 
} 
 
------------------ 
Output: 
------------第一次创建对象------------ 
final_01 = chenssy  final_02 = cm  final_03 = 34  final_04 = chen_ssy 
------------第二次创建对象------------ 
final_01 = chenssy  final_02 = zj  final_03 = 46  final_04 = chen_ssy 
------------修改引用对象-------------- 
final_01 = chenssy  final_02 = zj  final_03 = 46  final_04 = chenssy 

分享标题:finalize()方法如何在Java项目中使用-创新互联
URL分享:http://pwwzsj.com/article/dggsoj.html