JAVA基础知识再学习(1)静态代码块

一、对象是用于封装数据的。

 

二、什么时候使用静态?

1.      静态变量  

当对象中出现共享数据时。

2.      静态函数

当功能内部没有访问到非静态数据

(对象的特有数据 例如private name),就是用静态函数。

三、静态的应用

   1.每一个应用程序中都有共性的功能,可以将这些功能进行抽取,独立封装,以便复用。例如工具类。

   2.虽然建立了静态类,但是,他还是可以被建立对象,这样做其实没有意义。为了严谨,会强制让该类不能创建对象。所以,往往会把他的构造函数私有化

3.默认构造函数的权限是随着类的变化而变化的。

四、注释的作用

它可以被提取出来生成API文档。没错,就是你看到的API文档。

五、静态代码块

Static{    }

随着类的加载而执行,只执行一次。用于给类初始化。类加载到内存后,就可以随便用,类只加载一次。

并且静态代码块是优先于静态函数的。因为静态函数是被调用就会执行,而他是没名字,不调用也会执行。

class Code {
	static{
		System.out.println("a");
	}
}
class Demo{
	static{
		System.out.println("b");
	}
	public static void main(String[] args) {
		new Code();
		new Code();
		System.out.println("over");
	}
}

分析:1.demo类一加载到内存,还没执行调用,就会输出b.

      2.然后到第二个修饰块,输出c.

      3.主动调用主函数,加载Code类,code类修饰,输出a.

      4.再次new code类,但他不会再加载,无输出。

      5.输出over

注意两点:

1.静态块修饰类。在加载到内存时修饰。

2.New不是加载。只要用到这个类的东西,就会加载。而new只是第一次new会加载。更多是创建实例,加载只是一部分。

不加static的块可理解为修饰对象的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

良之才-小良

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值