代码块

package com.tedu;
public class User {
    private  int id;
    private String name;
    /**
 * 在类里 方法(包含 构造方法)外的代码块 ----构造代码块
 * 晚于 静态   早于构造方法
 * 构造几次  他就会运行几次
 *     */
 {
        System.out.println("我是构造代码块");
    }
    public void eat(){
// 方法里面的代码块 被称为局部代码块
// 什么时候调用方法 什么时候执行  按照顺序依次执行
 System.out.println("我是eat方法");
        {
            System.out.println("我是局部代码块");
        }
    }
    public User() {
        System.out.println("我是无参构造");
    }
    /**
 * static 修饰的类 变量 方法      被称为静态资源
 * static 修饰的代码块被称为 静态代码块
 * 静态代码块的作用是 初始化变量(在构造方法之前执行)
 * 一般用于    配置文件
 *静态代码块  只执行一次
 */
 static{
        System.out.println("我是静态代码块");
    }
}
class Aoo{
    public static void main(String[] args) {
        User u = new User();
        User u1 = new User();
        u.eat();
        u1.eat();
    }
}
// 3.我是无参构造 2// 1.我是静态代码块
//2.我是构造代码块 1

执行结果


我是静态代码块
我是构造代码块
我是无参构造
我是构造代码块
我是无参构造
我是eat方法
我是局部代码块
我是eat方法
我是局部代码块

你可能感兴趣的:(java)