5.1JAVA基础复习——JAVA中的静态代码块、构造代码块、构造函数、局部代码块区别
2017-02-07 16:27
344 查看
构造代码块:
在类中定义可以给所有对象进行初始化。
局部代码块:
在方法中定义属性的生命周期。
静态代码块:
在类中定义用于给类调用时属性的初始化
构造函数与构造代码块的区别:
构造函数是给对应的对象进行针对性的初始化。
构造代码块是给所有对象进行初始化
代码如下:
在类中定义可以给所有对象进行初始化。
局部代码块:
在方法中定义属性的生命周期。
静态代码块:
在类中定义用于给类调用时属性的初始化
构造函数与构造代码块的区别:
构造函数是给对应的对象进行针对性的初始化。
构造代码块是给所有对象进行初始化
代码如下:
public class Demo { private static int age; private static String name; //静态代码块:给类的属性进行初始化 static{ age = 10; name = "旺财"; } //构造代码块:给所有的对象初始化定义在类中方法外。 { show(); } public Demo(int age,String name){//有参构造函数 Demo.age =age; Demo.name = name; } public Demo(){//无参构造函数 } public void show(){ //普通函数 //局部代码块:定义属性的生命周期 { char sex = '男';//变量sex出了{}后就会被销毁 System.out.println("sex="+sex); } Demo.name = "张三"; } public static void main(String[] args) { /*当有静态代码块构造代码块构造函数时程序执行流程 * 1.类被调用或创建实例时会执行静态代码块进行初始化执行后age=10 name=旺财。 * 2.创建实例会执行构造代码块调用show方法执行后sex = 男 ,age不变,name = 张三。 * 3.调用有参构造函数传入参数执行后age = 50,name=姚明。 * 执行顺序为: * 1、静态代码块 :给类的属性进行初始化。 * 2、构造代码块:给所有的对象进行初始化。 * 3、有参或无惨构造(根据实例来定):给指定的对象进行初始化。 * 结果为:sex=男 注意这个是在构造代码块中输出的 * 50 姚明 * */ Demo d = new Demo(50,"姚明"); System.out.println(d.age+"\t"+d.name); } }
相关文章推荐
- java基础之静态代码块,局部代码块,构造代码块区别。
- 【java基础】 静态 关键字 static(构造函数、构造代码块、静态代码块的区别)
- 【java基础】static静态代码块,构造器代码块以及局部代码块的区别与应用!
- Java中局部代码块、构造代码块、静态代码块的区别?
- 【Java基础】2、Java中普通代码块,构造代码块,静态代码块区别及代码示例
- 一个例子说明java局部代码块、静态代码块、构造代码块区别
- Java基础复习:构造代码块和静态代码块
- 黑马程序员——Java基础---面向对象(面向对象,类,对象,匿名对象,封装,构造函数,构造代码块,this,static,main,帮助文档,静态代码块,单例)
- 黑马程序员_java基础学习笔记之(构造函数&构造代码块&静态代码块)的区别
- 【Java基础知识】代码块的执行顺序(静态、构造、局部代码块)
- 笔记-java基础,静态代码块,构造代码块,构造函数。
- Java中普通代码块,构造代码块,构造函数,静态代码块区别
- Java中普通代码块、构造代码块、静态代码块的区别
- java构造代码块,构造函数和普通函数的区别和调用时间
- 三、Java基础---------关于继承、构造函数、静态代码块执行顺序示例讲解
- 黑马程序员-java中构造函数、构造代码块、静态代码块及它们的初始化顺序
- 局部代码块——构造代码块——静态代码块 (In Java)
- Java_浅谈构造函数、构造代码块与静态代码块的用法
- JAVA静态代码块执行过程 以及和构造方法的区别
- Java的静态代码块、构造代码块、局部代码块