JAVA 中 static使用

static 关键字的具体使用:

​    1.static 可以修饰方法,属性,代码块,内部类

​    2.使用static来修饰属性:

​            属性:按是否使用static修饰,又分为,静态属性和非静态属性(静态属性  vs  非静态属性(实例对象))

​            实例变量:我们创建了类的多个对象,每个对象都独立的拥有一套类中的非静态属性,当修改其中一个的非静态属性时,不会导致其他对象中同样的属性值的修改

​            静态变量:我们创建了类的多个对象,多个对象共享同一个静态变量,当通过某一个对象修改静态变量时,会导致其他静态变量调用此静态变量会是我们修改过的内容-------共享

​            static修饰属性的其他说明:

​                                1.静态变量随着类的加载而加载

​                                2.静态变量的加载要早于对象的创建

​                                3.由于类只会加载一次,则我们的静态变量在内存中则也只会存在一份,存在我们的方法区的静态域中

​                                4. 类变量     实例变量

​                                5.我们不能通过类来调用我们的实例变量                

3.使用static修饰方法:静态方法

​                                ①随着类的加载而加载,可以通过类的方式去调用,同样可以通过我们的对象调用

​                                ②类同样不能使用类来调用方法

​                                ③静态方法中:只能调用静态的方法或属性

​                                ④非静态方法中:既可以调用非静态的方法或属性,也可以调用静态方法和属性

​                                ⑤在静态方法中不能使用this,因为我们静态方法比对象更先存在,我们随着类的                                    加载就加载静态方法,那时还没有我们的对象

4.static注意点

​                                ①在静态方法内,不能使用this和super的关键字

​                                ②关于静态属性和静态方法的使用,大家都从声明周期的角度去理解

5.如何确定一个属性为static?

​                                ①我们属性不会随着对象的不同而不同,我们就可以声明为静态的

​                                ②

6.如何确定一个方法为static?

​                                ①操作静态属性的方法,我们通常设置为static的

​                                ②工具类中的方法,习惯上声明为static

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
关键字? 在Javastatic是一个关键字,用于修饰类的成员变量和方法。当变量或方法被声明为static时,它们属于类而不是对象,可以在不创建对象的情况下访问和调用它们。 以下是使用static关键字的一些示例: 1. 静态变量 静态变量是属于类的变量,不属于任何对象。可以通过类名直接访问它们,而不需要创建类的实例。例如: ``` public class MyClass { static int count = 0; public MyClass() { count++; } } ``` 在上面的示例,count是一个静态变量,每次创建MyClass对象时它的值都会增加。可以使用MyClass.count访问它,而不需要创建任何对象。 2. 静态方法 静态方法是属于类的方法,不属于任何对象。可以通过类名直接调用它们,而不需要创建类的实例。例如: ``` public class MathUtils { public static int add(int a, int b) { return a + b; } } ``` 在上面的示例,add()是一个静态方法,它将两个整数相加并返回结果。可以使用MathUtils.add(1, 2)调用它,而不需要创建MathUtils的任何实例。 3. 静态代码块 静态代码块是在类加载时执行的代码块。可以在静态代码块初始化静态变量或执行其他必要的操作。例如: ``` public class MyClass { static int count; static { count = 0; // 执行其他操作 } public MyClass() { count++; } } ``` 在上面的示例,静态代码块初始化了count变量,并执行了其他必要的操作。在类加载时,静态代码块会被执行一次。 总之,静态变量、静态方法和静态代码块都是使用static关键字的常见示例。它们使得我们可以在不创建类的实例的情况下访问和调用类的成员变量和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值