-
static关键字的一些使用
通常情况下,类成员必须通过它的类的对象访问,但是可以创建这样一个成员,它能够被它自己使用,而不必引用特定的实例。在成员的声明前面加上关键字static(静态的)就能创建这样的成员。如果一个成员被声明为static,它就能够在它的类的任何对象创建之前被访问,而不必引用任何对象。你可以将方法和变量都声明为static。
总的来说,用static声明的静态变量就是一种独立于类的对象的方法或属性
在B站上听了狂神老师的课程,我了解到了static的一些重要特性,在这里进行一些归纳总结:
1.static声明的方法和属性是可以直接用类名调用,而不需要对象调用的
譬如,在类A中:
|
class A{ |
|
public static int num1; |
|
public int num2; |
|
} |
此时想在主类里面调用num1,num2则:
|
public class B{ |
|
public static void main(String[] args){ |
|
A a = new A(); |
|
System.out.println(A.num1);//此处可以用a.num1也可 |
|
System.out.println(a.num2);//此处只能用对象a调用 |
|
} |
|
} |
静态方法与之同理
2.针对代码块而言,static代码块 先于 非静态代码块 先于 构造方法
如图所示,在创建对象时,执行构造方法之前会先执行代码块内的内容,而static先于非静态的,再次说明static声明的内容是和类一起初始化的,而不是对象
注:static声明的内容只执行一次,无论创建多少次对象都只执行一次
也就是说,还是上面的例子,如果:
|
A a = new A(); |
|
A b = new A(); |
|
A c = new A(); |
static的代码块的内容还是只执行一次
3.静态导入包的使用
在对其他的工具包进行导入时,可以添加static关键字,例如:
|
import static java.lang.System.out; |
在你想要进行System.out.println("")输出时,可以写作:
|
out.println(""); |
我的理解是,通过导入System包的out变量,并用static来修饰这一个out变量,使之在该java文件中的out变成一个静态变量,就可以像调用类中static修饰的变量一样,直接调用out。
这是我的static关键字学习过程中的收获,如果大家有不同的想法欢迎讨论。
出处:https://www.cnblogs.com/cola-pink/p/15805821.html
栏目列表
最新更新
Python采集ip代理,并检测是否可用(仅用
用python实现微信、钉钉等软件多开
利用Python解决掉谷歌人机验证,全自动识
用python写一个自动生成春联的软件,打包
Python写的一个GUI界面的小说爬虫软件
用python爬取jk小姐姐照片慢慢看「本地直
超方便的 Python 自动唤醒窗口截图脚本
5个方便好用的Python自动化脚本
刚刚出炉的冬奥会吉祥物:冰墩墩,附源
没买抢冰墩墩,那咱们自己用python画一个
SQL分库分表
关于如何在window下执行SQLSERVER的定时备份
SQLServer高可用方案在企业生产环境的实践
SQL Server HA - 高可用性解决方案解决方案概
独家揭秘:SQL Server AlwaysOn在阿里云的突破
sqlserver数据库还原存储过程脚本
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
Ubuntu 16.04 更改系统语言为简体中文 ####
【JavaScript】笔记(7)--- JSON(对象的创建
大前端工程化之写一个简单的webpack插件
前端基础之JavaScript(二)
前端基础之JavaScript(一)
大前端JS篇之搞懂【WeakSet】
增删商品计算价格
【JavaScript】笔记(6)--- BOM(open 与 clo
【JavaScript】笔记(5)--- DOM(续)(复选
【JavaScript】笔记(4)--- DOM(初步)(获取文