Java语言中类的静态成员和非静态成员的区别

静态成员随着类的产生而产生,消失而消失;非静态成员随着对象的产生而产生,消失而消失。

1.静态成员变量与非静态成员变量

产生时间不同:静态成员随着类的产生而产生,非静态成员随着对象的产生而产生

存储位置不同:静态成员变量存在于类方法区的静态区中,非静态成员变量存在于堆内存中

调用方式不同:静态成员变量可由类名调用,也可由对象调用,是属于整个类的,是该类所有对象所共有的对象;而非静态成员变量只能由具体的对象调用,是属于该类某一特定对象的

2.静态成员函数与非静态成员函数

静态成员函数只能访问静态成员变量/函数,而非静态成员函数可以访问静态、非静态成员变量/函数。

注:静态成员函数中没有this指针

猜你喜欢

转载自blog.csdn.net/weixin_39330853/article/details/87926160
今日推荐