java中static讲解

目录

一.static

二.变量的分类:

1.变量根据声明的位置进行划分:

2.成员变量又分为:实例变量   静态变量

三.java中三个变量分别储存在那块内存上?

1.什么时候变量声明为实例的,什么时候声明为静态的?

四.static变量例子:

五.空指针异常

1.空引用调用实例方法会出现什么问题?

2.空指针异常只有在什么情况下才会发生的呢?


一.static

1.static翻译为“静态”

2.所有的static关系子修饰都是类相关的,类级别的。

3.所有的static修饰的,都是采用“类名.”的方式访问。

4.static修饰的变量:静态变量

5.static修饰的方法:静态方法

6.没有static修饰的方法都要先new对象,然后通过“引用.”访问

static修饰的方法只能被另一个也是static修饰的方法调用

二.变量的分类:

1.变量根据声明的位置进行划分:

在方法体当中声明的变量叫做:局部变量 。

在方法体外声明的变量叫做:成员变量(全局变量)

注意:

(1).main 函数内的变量不是全局变量,而是局部变量,只不过它的生命周期和全局变量一样长而已。

(2).全局变量一定是定义在函数外部的。

2.成员变量又分为:实例变量   静态变量

静态变量都用类名访问。

实例变量的都要先new对象,然后引用访问。要不可能会出现空指针异常。

重点记住:

加static的变量叫做静态变量

静态变量在类加载时初始化,不需要new对象,静态变量的空间就开出来了

静态变量储存在方法区。

三.java中三个变量分别储存在那块内存上?

jvm一共有三块内存

栈内存中存放局部变量

堆内存中存放实例变量(对象级别,没有static的)

方法区中放静态变量(类级别)

1.什么时候变量声明为实例的,什么时候声明为静态的?

如歌这个类中的所有对象的某个属性值都是一样的,不建议定义为实例变量,浪费内存空间,建议定义为类级别特征,定义为静态变量,在方法去中值保留一份,节省内存开销。

每个对象都不一样的变量的是实例变量,

所有对象都有一个一样的变量叫静态变量。

 

四.static变量例子:

结论:

实例的:一定需要使用“引用.”来访问

静态的:建议使用“类名.”来访问,但使用“引用.”也行(不建议使用“引用.”)静态的如歌使用“引用.”来访问会让程序员产生困惑:以为是实例的

例子:

 

 

五.空指针异常

1.空引用调用实例方法会出现什么问题?

空指针异常。

2.空指针异常只有在什么情况下才会发生的呢?

只有在“空引用”访问“实例”相关的,都会出现空指针异常。

空引用例子:

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

码头整点儿薯条

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值