Java--代码块

今天看了大神们的博客感觉自己和别人写的不是一种语言,我实在是太垃圾了
但是又有什么办法呢,只能一步一步走把浪费过的时间追回来。。。

代码块

1. 局部代码块
定义在方法或语句中
特点:以{}划定的代码区域
2.构造代码块
定义在成员位置中的代码块
特点:优先于构造方法执行,构造代码块用于执行所有对象均需要的初始化动作,没创建一个对象均需要执行一次构造代码块
3.静态代码块
定义在成员位置,用static修饰的代码块
特点:优先于主方法执行,优先于构造代码块执行,当以任意形式第一次使用到该类时执行。该类不管创建多少对象,静态代码块只执行一次。可以给静态变量进行初始化,也可以给类进行初始化

class Person{ 
    //这是一个构造代码块
	{
		System.out.println("构造代码块");
	}
	//静态代码块
	static{
		System.out.println("静态代码块");
	}
	Person(){
		System.out.println("构造函数");
	}
	void show(){		
		System.out.println("函数代码块");
	}
	

}

class DemoBlack{
	public static void main(String[] args)
	{
		Person p=new Person();
		p.show();
	}
}

输出结果可以看出执行顺序
在这里插入图片描述

//当我们多次输出时可以发现静态代码块只执行了一次
class Person{ 
    //这是一个构造代码块
	{
		System.out.println("2.构造代码块");
	}
	//静态代码块
	static{
		System.out.println("1.静态代码块");
	}
	Person(){
		System.out.println("3.构造函数");
	}
	void show(){		
		System.out.println("4.函数代码块");
	}
	

}

class DemoBlack{
	public static void main(String[] args)
	{
		Person p=new Person();
		p.show();
		Person p2=new Person();
		p2.show();
		Person p3=new Person();
		p3.show();
	}
}

在这里插入图片描述

以上总结完。

下面说个Java的报错
解决 java:错误:编码GBK的不可映射字符
通过DOS编译时报错:
在这里插入图片描述

解决办法:
使用javac -encoding UTF-8 加文件名.java
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值