Java中static关键字

发布于:2023-02-12 ⋅ 阅读:(519) ⋅ 点赞:(0)

目录

static是什么?

成员变量分类

静态变量与实例变量的区别

1.存储位置

2.使用

static关键字的使用场景

1.修饰成员变量

2.修饰方法

成员方法的分类:

静态方法和实例方法的区别

3.修饰内部类

4.类的初始化顺序

5.Java设计模式:单例模式

 static访问注意事项:


static是什么?

  • static是静态的意思,可以用来修饰成员变量、成员方法
  • static修饰成员变量之后称为静态成员变量(类变量),修饰方法之后称为静态方法(类方法)。
  • static修饰成员变量表示该成员变量在内存中只存储一份可以被类的所有对象共享(访问、修改)

成员变量分类:

加static称为静态变量,不加称为实例变量;静态变量和实例变量统称为成员变量

静态变量与实例变量的区别

1.存储位置

静态变量:方法区

实例变量:堆内存

2.使用

静态变量只跟类有关,和对象无关;实例变量只跟对象有关。

【一个对象对应一份实例变量;一个类只对应一个静态。】

访问方法:

静态变量: 类名.静态成员变量

实例变量:对象名.实例成员变量

static关键字的使用场景

1.修饰成员变量

被static修饰的成员变量称为静态变量

2.修饰方法

 

成员方法的分类:

静态成员方法(有static修饰,归属于类),建议用类名访问,也可以用对象访问。

实例成员方法(无static修饰,归属于对象),只能用对象触发访问

使用场景:

表示对象自己的行为的,且方法中需要访问实例成员的,则该方法必须申明成实例方法

如果该方法是以执行一个共用功能为目的,则可以申明成静态方法。

静态方法和实例方法的区别

静态方法:不存在对象this

实例方法:可以提供对象this

3.修饰内部类

4.类的初始化顺序

单类:静态变量、静态块、实例变量、实例块、构造函数

继承:父子类

5.Java设计模式:单例模式

 static访问注意事项:

  • 静态方法只能访问静态的成员,不可以直接访问实例成员。
  • 实例方法可以访问静态的成员,也可以访问实例成员。
  • 静态方法中是不可以出现this关键字的。

静态方法不可以“直接”访问实例变量或实例方法,但可以新建一个对象,通过“对象.”的方法进行间接访问。


网站公告

今日签到

点亮在社区的每一天
去签到

热门文章