精华内容
下载资源
问答
  • 构造代码块作用

    千次阅读 2019-02-25 17:35:33
    构造代码块的生命周期跟类一直,成员变量的生命周期跟方法一直   Java常见代码块的作用与区别   1. 局部代码块 作用在方法当中,作用是控制变量的生命周期: public void show(){ { System.out.println("...

     

    构造代码块的生命周期跟类一直,成员变量的生命周期跟方法一直

     

    Java常见代码块的作用与区别

     

    1. 局部代码块
    作用在方法当中,作用是控制变量的生命周期:
    public void show(){
    {
    System.out.println("局部代码块运行!");
    }
    }123456
    在程序中当我们定义完成一个局部变量x之后,并且在接下来的代码中,不想再用到它时,那么就没必要让x在内存中继续占用空间。因此就有了局部代码块。
    2. 构造代码块
    作用在类的定义Body中,作用是给类的部分字段统一初始化:
    public class Apple {
    private String size;
    //构造代码块
    {
    System.out.println("构造代码块运行!");
    size = "E";
    }
    }
    12345678910
    构造代码块与构造函数的区别是:构造代码块是给所有对象进行统一初始化,而构造函数是给对应的对象初始化,因为构造函数是可以多个的,运行哪个构造函数就会建立什么样的对象,但无论建立哪个对象,都会先执行相同的构造代码块。也就是说,构造代码块中定义的是不同对象共性的初始化内容。所以理所当然的,构造代码块在构造函数之前执行。
    3. 静态代码块
    作用有两个:
    (1)给类的静态变量赋值;
    (2)声明静态变量;
    作用在类的Body中,对类中的静态变量初始化:
    public class APP {
    static int x, y; // 静态变量
    static {
    x = 5; // 给静态变量x赋值
    }
    public static void myMethod() {
    y = x++ + ++x; // x++ 先使用x的值再加1;++x先加1再使用x的值
    }
    public static void main(String[] args) {
    x--;
    myMethod();
    System.out.println(x + y + ++x);
    }
    }
    输出:23

     

    展开全文
  • 构造代码块

    2015-08-21 08:28:37
    构造代码块构造代码块作用:给对象进行统一的初始化。构造函数的作用: 给对应的对象进行初始化。 构造代码块的格式: { 构造代码块 }注意: 构造代码块的大括号必须位于成员 位置上。 代码块的类别: 1. ...
    /*
    构造代码块:
    
    构造代码块的作用:给对象进行统一的初始化。
    
    构造函数的作用: 给对应的对象进行初始化。
    
    
    构造代码块的格式:
    
        {
            构造代码块
        }
    
    注意: 构造代码块的大括号必须位于成员 位置上。
    
    
    代码块的类别:
        1. 构造代码块。
        2. 局部代码块.   大括号位于方法之内。  作用:缩短局部 变量 的生
        命周期,节省一点点内存。
        3. 静态代码块  static 
    */
    
    class Baby{
    
        int id; //身份证
    
        String  name;  //名字
    
        //构造代码块...
        {
            //System.out.println("构造代码块的代码执行了......");
    
        }
    
        //带参构造函数
        public  Baby(int i , String n){
            id  = i;
            name = n;
        }
    
        //无参构造方法
        public Baby(){
        }
    
        public void cry(){
            System.out.println(name+"哇哇哭...");
        }   
    }
    
    
    
    class Demo4 
    {
        public static void main(String[] args) 
        {
            Baby b1 = new Baby(110,"狗娃");  //  狗娃 狗剩 铁蛋
            System.out.println("编号:"+ b1.id + " 名字:"+b1.name);
            /*
            System.out.println("编号:"+ b1.id + " 名字:"+b1.name);
    
            new Baby(112,"狗剩");
            new Baby();
            */
            /*
            new Baby(110,"狗娃");
            new Baby(112,"狗剩");
            new Baby();
            */
        }
    }
    
    /*
    构造 代码块要注意的事项:
        1. java编译器编译一个java源文件的时候,会把成员变量的声明语句提
        前至一个类的最前端。
        2. 成员变量的初始化工作其实都在在构造函数中执行的。
        3. 一旦经过java编译器编译后,那么构造代码块的代码块就会被移动构造
        函数中执行,是在构造函数之前执行的,构造函数的中代码是最后执行的。
        4. 成员变量的显示初始化与构造代码块 的代码是按照当前代码的顺序执行
        的。
    */
    class Demo5 
    {
    
    
    
        //构造函数
        public Demo5(){   //构造函数
            i = 300000000;  
        }
    
        //构造代码块   //构造代码块的初始化
        {
            i = 200000000;
        }
    
        int i = 100000000;   //成员变量的显初始化
    
    
    
        public static void main(String[] args) 
        {
            Demo5 d = new Demo5();
            System.out.println("i = "+d.i); //    双、吴、刘 :2000   :
        }
    }
    
    展开全文
  • 【java】java构造代码块作用{}

    千次阅读 多人点赞 2018-09-23 13:46:07
    构造块:直接在类中定义且没有加static关键字的代码块称为{}构造代码块构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数。 package test922; public class ...

    构造块:直接在类中定义且没有加static关键字的代码块称为{}构造代码块。构造代码块在创建对象时被调用,每次创建对象都会被调用,并且构造代码块的执行次序优先于类构造函数。

    package test922;
    
    public class CodeBlock {
    
    	{
    		System.out.println("第一代码块");
    	}
    
    	public CodeBlock() {
    		System.out.println("构造方法");
    	}
    
    	{
    		System.out.println("第二代码块");
    	}
    
    	public static void main(String[] args) {
    		new CodeBlock();
    		new CodeBlock();
    		new CodeBlock();
    	}
    
    }
    

     

    运行结果: 

    第一代码块
    第二代码块
    构造方法
    第一代码块
    第二代码块
    构造方法
    第一代码块
    第二代码块
    构造方法

    展开全文
  • 所谓的代码块是指使用“{}”括起来的一段代码,根据位置不同,代码块可以分为构造代码块、构造函数、静态代码块。 静态代码块:用staitc声明,jvm加载类时执行,仅执行一次 构造代码块:类中直接用 {} 定义,每一...

    所谓的代码块是指使用“{}”括起来的一段代码,根据位置不同,代码块可以分为构造代码块、构造函数、静态代码块。

    • 静态代码块:用staitc声明,jvm加载类时执行,仅执行一次
    • 构造代码块:类中直接用 {} 定义,每一次创建对象时执行。
    • 构造函数:创建对象时执行

    执行顺序优先级:静态代码块 > 构造代码块 > 构造函数。

    静态代码块

    static {
         System.out.println(" I am 静态代码块");
    }
    • 静态代码块优先于主方法执行,而在类中定义的静态代码块会优先于构造块执行,而且不管有多少个对象产生,静态代码块只执行一次。
    • 静态代码块其实就是给类初始化的,而构造代码块时给对象初始化的。
    • 一个类中可以有多个静态代码块

    构造代码块

    {
         System.out.println(" I am 构造代码块");
    }
    • 构造代码块的作用是给对象进行初始化。
    • 对象一建立就运行构造代码块,而且优先于构造函数执行
    • 构造代码块与构造函数的区别是:构造代码块是给所有对象进行统一初始化,而构造函数是给对应的对象初始化,因为构造函数是可以多个的,运行哪个构造函数就会建立什么样的对象,但无论建立哪个对象,都会先执行相同的构造代码块。也就是说,构造代码块中定义的是不同对象共性的初始化内容。

    构造函数

    public Test() {
        System.out.println(" I am 构造函数");
    }

    每创建一个对象时就会执行一次。同时构造函数是给特定对象进行初始化,而构造代码块是给所有对象进行初始化

    示例代码:

    class Test {
        static {
            System.out.println(" I am 构造函数");
        }
    
        {
            System.out.println(" I am 静态代码块");
        }
    
        public Test() {
            System.out.println(" I am 构造代码块");
        }
    }
    
    
    public class CodeBlock {
        /**
         * @itmyhome
         */
        public static void main(String[] args) {
            Test test1 = new Test();
            System.out.println("-------");
            Test test2 = new Test();
        }
    }

    输出结果:

     I am 静态代码块
     I am 构造代码块
     I am 构造函数
    -------
     I am 构造代码块
     I am 构造函数
    展开全文
  •  构造代码块的大括号必须位于成员位置上(类之内,方法之外)  2.局部代码块。 局部代码块的大括号位于方法之内。作用:缩短局部 变量 的生命周期,节省一点点内存。很少用  3.静态代码块。 静态代码块是...
  • Java--构造代码块

    千次阅读 2019-06-13 13:53:52
    构造代码块 对象一建立就运行,而且优先于构造函数运行。 构造代码块中定义的是不同对象共性的初始化内容。 作用: 给对象进行初始化。 构造代码块与构造函数的区别: 构造代码块是给所有对象进行统一初始化,构造...
  • 构造代码块作用:给对象进行初始化。 对象一建立就运行,而且优先于构造函数执行。 构造代码块与构造函数的区别: 构造代码块是给所有对象进行统一初始化, 而构造函数是给对应的对象初始化。 构造代码快中...
  • 构造函数与构造代码块
  • 构造代码块是在类中方法外用 {} 括起来的代码,作用是把所有构造方法中相同的内容抽取出来,将来在调用构造方法的时候会去自动调用构造代码块,构造代码快优先于构造方法 构造代码块作用是给对象进行初始化 构造代...
  • 构造代码块在类中定义,作用是初始化对象,那有人问了,那跟构造函数有什么区别呢?构造函数可以有多个,例如有A,B,C三个构造函数,他们如果都有System.out.println(“HI”); 这一个语句的话,就可以把这个语句放到...
  • package gt; /** * Created by Cronous on 2017/10/29. * 静态代码块和构造代码块的区别 */ public class day01 { public static void main(String[] args){ Person p1 = new Person("tom"); Person p2 =
  • 新手小白学JAVA 面向对象2 构造函数 构造代码块 this

    万次阅读 多人点赞 2021-05-10 08:34:24
    1 构造方法 1.1 概念 构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法 构方法的主要功能就是完成对象创建或者初始化 当类创建对象(实例化)时,就会自动调用构造方法 构造方法与普通方法一样也可以...
  • JAVA_SE基础——30.构造代码块

    千次阅读 2015-09-22 22:01:45
    构造代码块作用:给所有的对象进行统一的初始化。 问题:要求每个小孩出生都会哭,这份代码有两个构造函数,如果需要每个小孩出生都要哭的话,那么就需要在不同的构造函数中都调用cry()函数,但是这样子的话...
  • Java基础:构造函数与构造代码块构造函数构造代码块 构造函数 构造函数是Java中的一个重要概念,它的作用是对对象的数据进行初始化。怎么去理解这个初始化呢,以新生入学为例,我们当然可以在学生入学后去给他分配...
  • Java提高篇——静态代码块、构造代码块、构造函数以及Java类初始化顺序阅读目录构造函数构造代码块静态代码块Java类初始化顺序静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块:类中直接用{}定义...
  • 构造代码块的特点:对像一建立就运行了,而且优先于构造函数执行 作用:给对像进行初始化的 构造代码块和构造法方的区别: 构造方法是对应的对象进行初始化, 构造代码块是给所有的对像进行统一的初始化 构造代码块...
  • * 构造代码块:在类中的成员位置,用{}括起来的代码。每次调用构造方法执行前,都会先执行构造代码块。 * 作用:可以把多个构造方法的共同代码放在一起。 * 静态代码块:在类中的成员位置,用{}括
  • 局部代码块  局部位置在方法内部,...构造代码块  在类中的成员位置(就是成员变量和成员方法可以在的位置)。在构造方法执行之前执行。  每一次调构造方法执行前都会自动先执行构造代码块。  {} 静态代码块  ...
  • /**构造函数 * 特点: * 1.函数名与类名相同 * 2.... * 3.... * 作用: * 给对象进行初始化 * 注意: * 1.默认构造函数的特点 * 2.多个构造函数是以重载的形式... *构造函数的作用:可以用于给对象进行初始化。 *
  • 1什么是代码块?? 答:代码块:在Java中用{}括起来的内容. 2:代码块的分类! (1)局部代码块 在类的局部位置 作用:限定当前变量的声明周期 *变量x在类中只使用一次, 用一个局部代码块,是为了在代码块...
  • 构造函数、构造代码块和静态代码块容易混淆,它们的执行条件和执行顺序也常常容易犯迷。这里就针对这些问题说一下我个人的一些理解,顺便对这部分内容做个小结。 构造函数 格式:类名(参数1,参数2,…){构造函数...
  • 构造函数 class Person { private String name; private int age; //构造函数,给对象初始化用 Person(String name, int age) { this.name = name; this.age = age; } } 特点: 1. 函数名与类名相同 2. ...
  • java类中的构造函数和构造代码块

    万次阅读 2017-04-26 23:51:49
    构造函数:构造函数的作用: 给对应的对象进行初始化。构造函数的定义的格式: 修饰符 函数名 (形式参数) { 函数体... }构造函数注意的细节: 1、构造函数是没有...构造代码块构造代码块作用:给 对象进行统一
  • java构造函数 构造代码块

    千次阅读 2013-01-15 09:34:04
    特点:  1.函数名与类名相同  2.不用定义返回值类型  3.不用写rutern语句 ...作用: ... 对象一建立 就会调用与之对应的构造函数;...构造代码块:  作用:给对象进行初始化  对象一建立就运行,而且
  • 根据它位置和声明的不同,我们可以将代码块分为局部代码块,构造代码块,静态代码块,同步代码块(多线程涉及)a. 局部代码块限定了变量的生命周期,变量在局部代码块中定义的,那么出来局部代码块之后,就访问不到了...
  • 近期做牛客网的Java开发笔试题,发现这类型的题目较多,很容易混淆,特将相关概念和相关示例整理如下,供大家参考^_^ ...2. 构造代码块在创建对象时被调用,每次创建对象都会调用一次,但是优先于构造...
  • 内容大纲 一、静态代码块 ①、格式 ...在java类中(方法中不能存在静态代码块)使用static关键字和{}声明的代码块: public class CodeBlock { static{ System.out.println("静态代码块");...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 235,697
精华内容 94,278
关键字:

构造代码块的作用