构造代码块:
  在类中定义可以给所有对象进行初始化。
局部代码块:
  在方法中定义属性的生命周期。
静态代码块:
  在类中定义用于给类调用时属性的初始化

构造函数与构造代码块的区别:
  构造函数是给对应的对象进行针对性的初始化。
  构造代码块是给所有对象进行初始化

代码如下:

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);
}
}

5.1JAVA基础复习——JAVA中的静态代码块、构造代码块、构造函数、局部代码块区别的更多相关文章

  1. 2.1JAVA基础复习——JAVA语言的基础组成注释和常量变量

    JAVA语言的基础组成有: 1.关键字:被赋予特殊含义的单词. 2.标识符:用来标识的符号. 3.注释:用来注释说明程序的文字. 4.常量和变量:内存存储区域的表示. 5.运算符:程序中用来运算的符号 ...

  2. 3.JAVA基础复习——JAVA中的类与对象

    什么是对象: 就是现实中真实的实体,对象与实体是一一对应的,现实中每一个实体都是一个对象在. JAVA中的对象: Java中通过new关键字来创建对象. 类: 用JAVA语言对现实生活中的事物进行描述 ...

  3. 4.JAVA基础复习——JAVA中的构造函数与this关键字

    构造函数:构建创造对象时调用的函数 特点: 1.函数名与类名相同. 2.不用定义返回值类型. 3.没有具体的返回值. public class Demo { private int age; priv ...

  4. 7.JAVA基础复习——JAVA中的设计模式单例模式

    设计模式:是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 总体来说设计模式分为23种三大类: 创建型模式,共 ...

  5. 5.JAVA基础复习——JAVA中的static关键字作用与用法

    static关键字: 特点: 1.static是一个修饰符,用于修饰成员.(成员变量,成员函数)static修饰的成员变量 称之为静态变量或类变量. 2.static修饰的成员被所有的对象共享. 3. ...

  6. Java 中(静态)变量、(静态)代码块的执行顺序

    Java 中(静态)变量.(静态)代码块的执行顺序 非原创 本文讨论 Java 中(静态)变量.(静态)代码块的执行顺序 首先创建 3 个类 1.Foo 类 public class Foo { pu ...

  7. Java 中的静态嵌套类和非静态嵌套类

    Java 中的静态嵌套类和非静态嵌套类 术语:嵌套类分为两类:静态嵌套类和非静态嵌套类.声明 static 的嵌套类称为静态嵌套类,非静态嵌套类也称为内部类. class OuterClass { p ...

  8. Java中的静态代理实现方式

    1.编写一个接口类 如:Subject package com.neusoft.pattern.staticProxy; /** * <p>Title:</p> * <p ...

  9. Java中List,ArrayList、Vector,map,HashTable,HashMap区别用法

    Java中List,ArrayList.Vector,map,HashTable,HashMap区别用法 标签: vectorhashmaplistjavaiteratorinteger ArrayL ...

随机推荐

  1. codecademy课程笔记——JavaScript Promise

      Promise是一种表示异步操作最终的结果的对象,一个Promise对象有三种状态 Pending: 初始状态 ,操作还未完成 Fullfilled:操作成功完成,且这个promise现在有一个r ...

  2. 23 创建ArcMap启动日志

    在ArcMap的启动过程中,我们可以看到软件的界面上分别会显示[初始化许可……].[初始化应用……].[加载文档……]字样,当ArcMap打开出现问题时,我们可以根据以上文字来判断出现错误的情况,还有 ...

  3. oracle的用户管理

    创建用户 在Oracle中创建用户需要用到dba,普通用户无法创建 > create user 用户名 identified by 密码; * 密码必须以英文开头,不然是创建不起来的! * 如果 ...

  4. CentOS7 安装 jexus-5.8.2-x64

    前要提示: 如果你要安装asp.net 请参考: http://www.cnblogs.com/xiaoruilin/p/7867823.html 背景: CentOS7 Mono (Mono JIT ...

  5. 电子产品使用感受之----AirPods的一天使用体验分享

    2019.03.29 晚上8点50分更新: 3月28日我的新款AirPods终于到货了,作为一代产品使用2年的用户,终于可以说说这枚新品的一天使用感受了: 我们会从以下几个方面来进行阐述: 外观 技术 ...

  6. 2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165311 Exp3 免杀原理与实践 免杀原理及基础问题回答 实验内容 任务一:正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil- ...

  7. hadoop三个配置文件的参数含义说明

    1       获取默认配置 配置hadoop,主要是配置core-site.xml,hdfs-site.xml,mapred-site.xml三个配置文件,默认下来,这些配置文件都是空的,所以很难知 ...

  8. Oracle 基础概念

    数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等) --查询当前数据库名:select name from v$database; 数据库实例是一组Oracle后台进程/线程以及 ...

  9. Express全系列教程之(三):get传参

    一.关于get请求 一般在网站开发中,get都用作数据获取和查询,类似于数据库中的查询操作,当服务器解析前台资源后即传输相应内容:而查询字符串是在URL上进行的,形如: http://localhos ...

  10. oracle根据某个字段的值进行排序

    需求:按照颜色为蓝色.红色.黄色进行排序: order by  case                  when color = '蓝色' then                   1     ...