继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Java中static关键字的使用总结

道可
关注TA
已关注
手记 47
粉丝 1万
获赞 1426

在Java中,比较常见的static的使用场景是类的静态属性、静态方法,静态块和静态内部类。

1. 类的静态属性和静态方法

被static关键字修饰的属性和方法,被成为类的静态属性和静态方法。在Java中,关于静态属性和方法,是存在约束的。

静态方法可以直接使用该类的静态属性,但是不能使用该类的非静态属性。
静态方法可以直接使用该类的静态方法,但是不能使用该类的非静态方法。

图片描述

可以看到,在类的静态方法中使用非静态属性和非静态方法,是会报错的。

2. 静态块

静态块,就是用static关键字修饰的代码块{}。在执行顺序上,静态块会优先于普通代码块。并且静态块只执行一次。
图片描述

3. 静态内部类

首先介绍一下普通内部类。内部类即是在类的内部定义的类。内部类方法可以访问外围类的数据(包含私有数据),内部类可以对同一个包中的其他类隐藏。经过编译之后,包含内部类的类会生成多个class文件,内部类对应的class文件的命名格式为外围类$内部类.class。在内部类中,默认访问内部类自己的方法或者属性。如果需要访问外围类的同名属性或者方法,需要使用this关键字。内部类对象的初始化语法是内部类 对象名 = 外部类.new 内部类();
图片描述

静态内部类与内部类的区别很简单,是静态的,所以不存在this关键字。所以如果内部类中不需要引用外围类的对象的话,就可以将这个内部类定义为静态的。静态内部类的初始化语法与普通类相同。
图片描述

打开App,阅读手记
4人推荐
发表评论
随时随地看视频慕课网APP