码迷,mamicode.com
首页 > 其他好文 > 详细

03-14_代码块

时间:2018-02-02 18:31:32      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:多线程   变量   logs   div   com   静态块   全局   post   pre   

代码块

在程序编写之中可以直接使用“{}”定义一段语句,那么根据此部分定义的位置以及声明的关键字的不同,代码块一共可以分为四种:

  • 普通代码块
  • 构造块
  • 静态块
  • 同步代码块(多线程时讲解)。

范例:编写普通代码块

public class TestDemo {
    public static void main(String args[]) {
        {   // 普通代码块
            int num = 10;       // 局部变量
            System.out.println("num = " + num);
        }
        int num = 100;      // 全局变量
        System.out.println("num = " + num);
    }
}
程序执行结果:
num = 10
num = 100

范例:定义构造块

class Book {
    public Book() {         // 构造方法
        System.out.println("【A】Book类的构造方法");
    }
    {   // 将代码块写在了类里面,所以为构造块
        System.out.println("【B】Book类中的构造块");
    }
}
public class TestDemo {
    public static void main(String args[]) {
        new Book();     // 实例化类对象
        new Book();     // 实例化类对象
    }
}
程序执行结果:
【B】Book类中的构造块
【A】Book类的构造方法
【B】Book类中的构造块
【A】Book类的构造方法

情况一:在非主类中使用静态块

class Book {
    public Book() {                     // 构造方法
        System.out.println("【A】Book类的构造方法");
    }
    {   // 将代码块写在了类里面,所以为构造块
        System.out.println("【B】Book类中的构造块");
    }
    static {            // 定义静态块
        System.out.println("【C】Book类中的静态块") ;
    }
}
public class TestDemo {
    public static void main(String args[]) {
        new Book();     // 实例化类对象
        new Book();     // 实例化类对象
    }
}
程序执行结果:
【C】Book类中的静态块
【B】Book类中的构造块
【A】Book类的构造方法
【B】Book类中的构造块
【A】Book类的构造方法

情况二:在主类中定义静态块

public class TestDemo {
    public static void main(String args[]) {
        System.out.println("Hello World !");
    }
    static {            // 静态块
        System.out.println("更多资源请访问:www.yootk.com");
    }
}

程序执行结果:
更多资源请访问:www.yootk.com
Hello World !


03-14_代码块

标签:多线程   变量   logs   div   com   静态块   全局   post   pre   

原文地址:https://www.cnblogs.com/xuwei1/p/8406186.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!