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

首頁 > 學院 > 開發設計 > 正文

Java中的局部代碼塊、構造代碼塊、靜態代碼塊

2019-11-15 00:14:06
字體:
來源:轉載
供稿:網友
java中的局部代碼塊、構造代碼塊、靜態代碼塊

局部代碼塊:

作用:控制變量的生命周期;

在程序中,當我們已經使用完 x 后,并且在接下來的代碼中,不會再用到x,那么就沒必要讓x 在內存中占用空間了,這用情況下,可以使用 局部代碼塊,將x及其所設計到的區域封裝為局部代碼塊,他們在程序執行中順序不變,只是在執行完成后消失。

表現形式,以代碼體現如下:

    class TestDemo      {          public static void main(String[] args)          {              {                  int x = 9;                  System.out.PRintln(x);              }                    System.out.println("Hello World !");          }      }  

構造代碼塊:

作用:它可以給所有對象進行初始化存在于:類中。當類中的構造方法以重載的形式存在時,并且有共同成員變量或共同的方法時,可以通過構造代碼塊對其進行初始化;這樣可以減少代碼的重復!

class Person{    private String name;    private int age;    {        System.out.println("cons code run !");            }     Person() // 給對應的對象進行初始化    {        System.out.println("Person Now:RUN !");        System.out.println("eat————");    }    Person (String name , int age)    {        this.name = name ;        this.age= age;        System.out.println(this.name + "————" + this.age);        System.out.println("eat————");    }    }class ConsCodeDemo{    public static void main(String[] args)    {        Person p = new Person();        Person p1 = new Person("LiSi" , 23);    }}

我們可以看到類Person中 重載的構造方法中有共同的代碼System.out.println("eat————");我們可以將他封裝進構造代碼塊,用來給各種進行初始化。

優化后,代碼體現為:

class Person{    private String name;    private int age;    {        System.out.println("cons code run !");        eat();            }     Person() // 給對應的對象進行初始化    {        System.out.println("Person Now:RUN !");    }    Person (String name , int age)    {        this.name = name ;        this.age= age;        System.out.println(this.name + "————" + this.age);    }    public void eat()    {        System.out.println("eat————");    }    }class ConsCodeDemo{    public static void main(String[] args)    {        Person p = new Person();        Person p1 = new Person("LiSi" , 23);    }}

靜態代碼塊:

特點:

1. 隨著類的加載而執行,而且只一次。2. 優先于主函數執行。作用:給類進行初始化。

當類中的方法都被靜態了化,并且構造方法被private了,這是我們不能,在將這個類實例化,然而又想讓類增加一些屬性,就可以使用靜態代碼塊:

表現形式,以代碼體現如下:

class StaticCode{    static     {        System.out.println("A");    }    public void show()    {        System.out.println("Hello World !");    }}class StaticCodeDemo{    static     {        System.out.println("B");    }    public static void main(String[] args)    {        new StaticCode().show();    }    static    {        System.out.println("C");    }}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 比如县| 卢湾区| 陵川县| 鞍山市| 天峻县| 常州市| 伊宁县| 读书| 廉江市| 呼和浩特市| 普定县| 南平市| 丹棱县| 新昌县| 鱼台县| 山阳县| 绵竹市| 邛崃市| 长丰县| 普宁市| 夏津县| 柞水县| 满城县| 赤峰市| 新野县| 彩票| 铜山县| 万山特区| 格尔木市| 开化县| 崇仁县| 桑植县| 南澳县| 吴江市| 武安市| 德令哈市| 平阳县| 郴州市| 泸州市| 通海县| 武隆县|