问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

...static”,有的时候不加。问一下这个词有什么用

发布网友 发布时间:2023-12-02 23:13

我来回答

3个回答

热心网友 时间:2024-03-27 22:15

是静态修饰符,什么叫静态修饰符呢?大家都知道,在程序中任何变量或者代码都是在编译时由系统自动分配内存来存储的,而所谓静态就是指在编译后所分配的内存会一直存在,直到程序退出内存才会释放这个空间,也就是只要程序在运行,那么这块内存就会一直存在。这样做有什么意义呢?
在Java程序里面,所有的东西都是对象,而对象的抽象就是类,对于一个类而言,如果要使用他的成员,那么普通情况下必须先实例化对象后,通过对象的引用才能够访问这些成员,但是有种情况例外,就是该成员是用static声明的(在这里所讲排除了类的访问控制),例如:
未声明为static
class ClassA{
int b;
public void ex1(){

}
}
class ClassB{
void ex2{
int i;
ClassA a = new ClassA();
i = a.b; //这里通过对象引用访问成员变量b
a.ex1; //这里通过对象引用访问成员函数ex1
}
}

声明为static
class ClassA{
static int b;
static void ex1(){

}
}
class ClassB{
void ex2{
int i;
i = ClassA.b; //这里通过类名访问成员变量b
ClassA.ex1; //这里通过类名访问成员函数ex1
}
}
通过以上两种比较,就可以知道static用来修饰类成员的主要作用了,在java类库当中有很多类成员都声明为static,可以让用户不需要实例化对象就可以引用成员,最基本的有Integer.parseInt(),Float.parseFloat()等等用来把对象转换为所需要的基本数据类型。这样的变量和方法我们又叫做类变量和类方法。
接下来讲一下被static修饰后的变量的值的问题,刚才在前面讲过,被static修饰后的成员,在编译时由内存分配一块内存空间,直到程序停止运行才会释放,那么就是说该类的所有对象都会共享这块内存空间,看一下下面这个例子:
class TStatic{
static int i;

public TStatic(){
i = 4;
}

public TStatic(int j){
i = j;
}

public static void main(String args[]){
TStatic t = new TStatic(5); //声明对象引用,并实例化
TStatic tt = new TStatic(); //同上
System.out.println(t.i);
System.out.println(tt.i);
System.out.println(t.i);
}
}
这段代码里面Tstatic类有一个static的int变量I,有两个构造函数,第一个用于初始化I为4,第二个用于初始化i为传进函数的值,在main中所传的值是5,程序首先声明对象的引用t,然后调用带参数的构造函数实例化对象,此时对象t的成员变量I的值为5,接着声明对象tt,调用无参数的构造函数,那么就把对象tt的成员变量i的值初始化为4了,注意了,在这里i是static,那就是说该类的所有对象都共享该内存,那也就是说在实例化对象tt的时候改变了i的值,那么实际上对象t的i值也变了,因为实际上他们引用的是同一个成员变量。最后打印的结果是三个4。呵呵,写到这里大家是否明白了呢?不明白的话还可以看我资料头像加我哦。

热心网友 时间:2024-03-27 22:16

加一个就是静态,变量被共享,方法不用new 可以直接类名吊用

热心网友 时间:2024-03-27 22:15

static变量初始值一定要是常量。 static变量中文名叫静态变量。它与普通的变量比起来有如下几个区别: 1)位置:静态局部变量被编译器放在全局存储区.data,所以它虽然是局部的,但是在程序的整个生命周期中存在。
...static”,有的时候不加。问一下这个词有什么用

通过以上两种比较,就可以知道static用来修饰类成员的主要作用了,在java类库当中有很多类成员都声明为static,可以让用户不需要实例化对象就可以引用成员,最基本的有Integer.parseInt(),Float.parseFloat()等等用来把对象转换为所需要的基本数据类型。这样的变量和方法我们又叫做类变量和类方法。接下来讲一下...

静态ip - StormProxies

"StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP纯净高匿;2、覆盖全球200+的国家与地区,超7000万住宅IP。3、高可靠性,24小时稳定运行,平均99.99%的可用率;4、性价比更高,便宜好用,单个IP也能享受最优价格,没有额外费用;5、易于使用,支持HTTP/HTTPS/SOCKS5协议,提供多种API参数,网络集成更快捷;6、客服全天在线为您排忧解难,并可根据您的业务需求制定更合适的代理…StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP纯净高匿;2、覆盖全球20...

c语言中变量前的static有什么用???

在函数外的static变量意思是本地的, 跟不加static的差别就是其他文件不能通过extern来访问这个变量。

.net c#中static关键字是什么意思,还有,动态方法是哪个关键字,是什么...

static 表示这个变量或者方法是静态的。静态的变量或者方法是不需要实例化类,就可以访问的。而动态方法,可能就是没加static的,默认就是动态的,呵呵,这样的方法或者成员变量,需要实例化了类之后才可以访问。至于为什么有静态,那要从程序的内存组织方式上来解释,一个变量或者方法,加不加static关键字,...

static inline 函数有什么用

可以不声明成静态的,另一方面虽然内联函数可以加快调用的速度,但是调用次数多的话,会使可执行文件变大,这样会降低速度。static修饰的内联函数,一般情况下不会产生函数本身的代码,而是全部被嵌入在被调用的地方。如果不加static,则表示该函数有可能会被其他编译单元所调用,所以一定会产生函数本身的...

C语言这两道题加了static跟没加的有啥区别?

static int str_len(char *str){ return strlen(str);} int mystr_len(char *str){ return str_len(str) + num;} 当你mystr.c文件中的str_len函数加上了static关键字,你便不能在其他的地方复用这个函数,譬如,你不能这样写://这是main.c 的内容 include int main(){ int len;len ...

Java里面Public Static Void Private有什么用

不加public,class A{}表示只能同包使用。 修饰类的词有 public final|abstract class A{} ,final跟abstract不能同时存在,因为final修饰的类不能有子类,但是abstract修饰的类不能创建实例,因为abstract修饰的类肯定有抽象方法。但是你想用他的方法必须用子类实现abstract类的抽象方法,也就是说...

...有时候把字符数组定义为static静态类型,着有什么作用?请高手指点一...

晕 static是C++中的关键字 表明其为静态 即只能初始化一次 后面只能再赋值修改 其作用很多 可以看看书查找 这只是最基本的一种功能

什么叫做静态数据成员,它有何种特点?

· 它们不能以任何方式引用this或super(关键字super与继承有关,在下一章中描述)。如果你需要通过计算来初始化你的static变量,你可以声明一个static块,Static块仅在该类被加载时执行一次。下面的例子显示的类有一个static方法,一些static变量,以及一个static 初始化块:class UseStatic { static int...

我是一个刚入java程序开发的菜鸟,想问一下基础应该先学什么

Java的语法是类C++的,基本上主流的编程语言不是类C,就是类C++的,没有什么新东西,所以语法的学习,大概就是半天的时间足够了。唯一需要注意的是有几个不容易搞清楚的关键字的用法,public,protected,private,static,什么时候用,为什么要用,怎么用,这可能需要有人来指点一下,我当初是完全自己琢磨出来的,花了很久的...

vba 定义变量有 DIM PRIVATE PUBLIC 我想问一下他们的区别

Dim和Private关键字在定义模块级私有变量时是一样的。除此之外,在定义变量时,Public和Private关键字只能用于定义模块级变量,而Static只能用于过程内部定义静态变量。所以,我们可以将变量的定义方式总结如下:1)Dim可以用于过程内部和外部,但不管用于过程内外,使用Dim语句定义的变量均为私有,无法在模块外...

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
几何e值得买吗 我英语80分左右总是上不去(100分满分)怎么办... 刚绣好的十字绣怎么洗?画过格的 台州温岭第一人民医院有儿科吗 北山职业技术学校有哪些专业? 在温岭市找一份夜里兼职的驶机工作我现白天在厂里开车,想多收入,找... ...网线连接了客厅的路由器再连接到电脑上,卧室用的是和客厅路由器分... ...器放在客厅看电视用,卧室里面我还得再牵一根网线怎么办? ...台式 路由器在客厅距离太远拉网线不方便 卧室里有网线插口 卧室的网 ... 在临海社保缴费了一年后离开没办转移,去宁波参加社保 后又回临海参加社... 相亲男问我这些问题干嘛?1 求助大神,我两个变频器控制两个水泵。实现一用一备。水循环用的,给个... 红楼梦精彩片段摘抄,越多越好,不要评论3 红楼梦精彩片段摘抄点评170 途观车连续行驶多少小时应该歇一歇 小轿车最多可承载几人 帮我看看这四台电脑的配置哪个好? 延吉哪家医学验光配镜好 电视机尺寸和观看距离有多大关系? 设计加筋土挡土墙时,如何确定墙背土压力及筋带的长度 舟山十大最好玩的地方 舟山有哪些好玩的7 微信的要怎么修改?1253 爱是什么样的感觉??631 爱是种什么样的感觉?5 唉,大师,八字让你算过后感觉一点希望都没有了。虽说行善积德,... 用手机的坏处和好处83 玩手机的好处和坏处有哪些?26 几点到几点是几个小时?是怎么计算的?比如上午八点到凌晨四点是...120 羊鼠结合的真实案例,二婚羊鼠相害真实例子 红楼梦精彩片段摘抄点评170 我用flash cs4 .使用AS3.0编写代码时,在测试影... 用一个手机号码注册了两个,旧的被新申请的微信替换了。请问怎么找... 怎么设置容易让人家记住5 知足的作曲是谁? 疫情期间丹东泡手营子车管所还办里上车牌吗 徐杰的《陪伴》 歌词 相亲男好久不联系了,突然问我要了个红包,这什么意思啊 碳酸第一步水解方程式 你好,为什么我淘宝页面一直加载不了1 红楼梦精彩片段摘抄,越多越好,不要评论3 《红楼梦》精彩好段摘抄?135 碳酸的电离和水解方程式 红楼梦精彩片段摘抄600字58 目前配镜都选医学验光配镜,郑州哪里有医学验光配镜呢? 第三届厦门市医学验光配镜节到现在还在吗 微信手机号在24小时内,已绑定两个,已达到限制,不能在绑定其他微信... 高碑店万科里程之光房价多少钱一平? 一个新手机号怎么注册277 爱一个人是什么样的感觉?1683 在哪改?1327
  • 焦点

最新推荐

猜你喜欢

热门推荐