建议36:使用构造代码块精炼程序

1、什么是代码块?
用大括号把多行代码封装在一起,形成一个独立的数据体,实现特定算法的代码的集合成为代码块。
代码块是不能单独运行的,必须要有运行主体。

2、为什么会有代码块的出现?

3、代码块的分类,分为四类:普通代码块,同步代码块,静态代码块,构造代码块。

 看如下实例:

public class EveryDay
{
	public static void main(String[] args)
	{
		ConstructorTest ct = new ConstructorTest();
		new ConstructorTest("hello");
		ct.test();
		
	}
}

class ConstructorTest
{
	//构造代码块
	{
		System.out.println("构造代码块");
	};
	
	static
	{
		System.out.println("静态代码块!");
	}
	
	public ConstructorTest()
	{
		System.out.println("无参构造函数");	
	}
	
	public ConstructorTest(String s)
	{
		System.out.println("带参构造函数");	
	}
	
	public void test()
	{
		//普遍代码块
		{
			System.out.println("普通代码块");
		}
		// 同步代码块
		synchronized(this)
		{
			System.out.println("同步代码块");
		};
	}
}
运行结果:

静态代码块!
构造代码块
无参构造函数
构造代码块
带参构造函数
普通代码块
同步代码块
由上面运行结果可知:构造代码块插入到每个构造函数之前执行。

你可能感兴趣的:(建议36:使用构造代码块精炼程序)