倚楼听风雨
淡看江湖路

Java面向对象之static关键字类成员浅析

写这篇博客是由于同学某一天突然在群里抛出一个问题,想想代码也写了几年了,然而突然之间给不出一个系统的 比较有说服力的答案,所以本着好学进取的优秀作风(此处就是吹牛逼加装逼),老四决定重新看书,好好研究一下static与final这两个关键字,并且记录成文,希望也能帮助到你,分析的浅薄还请大神指教。今天先说一下static,至于final关键字老四已经另外写了一篇文章《Java面向对象之final修饰符》,您可以去参考一下。

  1. 类成员:说白了就是属于类自己的东西。包括类变量、类方法、静态初始化三部分。static关键字修饰的成员就是类成员,然而static关键字不能修饰构造器,类成员属于整个类,不属于单个实例。

  2. static修饰的变量、常量和方法称作静态变量、静态常量和静态方法,即静态成员,归类所有。

  3. 静态数据与静态方法的作用通常是为了提供共享数据或方法。

  4. 类变量可以直接通过类来访问,即"类.方法"等,也可以通过类的对象来访问,然而,即使你用类的对象访问类成员,实质上也是通过类来访问类成员。不建议那样做。由于Java中支持类的实例调用类成员,所以一个有意思的事情就是一个为null的实例可以调用静态方法惹。。。

  5. 静态初始化块也是类成员,用于执行类的初始化操作,初始化之后再也不会获得执行的机会了,好可惜。

  6. 静态最好的示例就是单例,关于单例他也是设计模式的一种。详情可以参考一下老四写的Java设计模式系列之单例模式《浅析设计模式第二十一章之单例模式 值得收藏》这篇文章。

  7. 关于使用static的注意事项:
- 类成员不能访问实例成员。
- 在静态方法中不可以使用this关键字
- 静态变量会默认赋初值,局部变量和final声明的变量必须手动赋初值
关于上面第4条的代码实例:

开篇的截图答案浅析老四已经在文章《》中做了一个基本的解释,大家也可以前去参考指点批评一下。

更博不易,如果觉得文章对你有帮助并且有能力的老铁烦请赞助盒烟钱,点我去赞助。或者扫描文章下面的微信/支付宝二维码打赏任意金额,老四这里抱拳了。赞助时请备注姓名或者昵称,因为您的署名会出现在赞赏列表页面,您的赞赏钱财也会被用于小站的服务器运维上面,再次抱拳。
赞(2) 给你买杜蕾斯
本站原创文章受自媒体平台原创保护,未经允许不得转载高老四博客 » Java面向对象之static关键字类成员浅析
分享到: 更多 (0)

开始你的表演 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下老四,鼓励我更好的创作

支付宝扫一扫打赏

微信扫一扫打赏