国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

淺析final,finally,finalize 的區別

2019-11-26 15:58:59
字體:
來源:轉載
供稿:網友

1.final
final修飾類,說明這個類不能被繼承,是以個頂級類。
final修飾變量,說明這個變量是常量。
final修飾方法,表示這個方法不能被重寫,不過可以沖在final方法。

比如有個基類Person,里面有一個public final void eat()方法,可以在Person類中重載同名方法,比如public void eat(String name,int age)。假如有一個子類Student,那么在Student中可以override父類的非final方法,但是不能override final方法。

Person

復制代碼 代碼如下:

package test2;

public class Person {
    private String name;
    private int age;

    public final void eat()
    {
        System.out.println("this is in person class");
    }

    public void eat(String name,int age)
    {

    }

}


Student
復制代碼 代碼如下:

package test2;

public class Student extends Person {

    @Override
    public void eat(String name, int age) {
        // TODO Auto-generated method stub
        super.eat(name, age);
    }
}


常見的final方法就是Object類累中的wait()和notify()方法。

2.finally
finally是關鍵字,在異常處理中,try子句中執行需要運行的內容,catch子句用于捕獲異常,finally子句表示不管是否發生異常,都會執行。finally可有可無。但是try...catch必須成對出現。

3.finalize()
finalize() 方法名,Object類的方法,Java 技術允許使用 finalize() 方法在垃圾收集器將對象從內存中清除出去之前做必要的清理工作。這個方法是由垃圾收集器在確定這個對象沒有被引用時對這個對象進行調用。finalize()方法是在垃圾收集器刪除對象之前對這個對象調用的子類覆蓋 finalize() 方法以整理系統資源或者執行其他清理操作。

代碼實例:

復制代碼 代碼如下:

class Person
{
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String toString()
    {
        return "姓名:"+this.name+",年齡:"+this.age;
    }

    public void finalize() throws Throwable{//對象釋放空間是默認調用此方法
        System.out.println("對象被釋放-->"+this);//直接輸出次對象,調用toString()方法
    }

}

public class SystemDemo {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Person per=new Person("zhangsan",30);
        per=null;//斷開引用,釋放空間
        //方法1:
        System.gc();//強制性釋放空間
        //方法2:
//        Runtime run=Runtime.getRuntime();
//        run.gc();
    }

}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 皮山县| 淮阳县| 金川县| 泰州市| 丹棱县| 虞城县| 大洼县| 大邑县| 察雅县| 泊头市| 保靖县| 简阳市| 扶风县| 清涧县| 徐闻县| 昌江| 五莲县| 台中市| 武清区| 方城县| 平遥县| 兴义市| 镇安县| 前郭尔| 荣成市| 崇义县| 广州市| 邵阳市| 加查县| 潜江市| 大渡口区| 崇信县| 互助| 丰宁| 从江县| 张家口市| 富民县| 宾川县| 南汇区| 宁津县| 太湖县|