把变量声明为static有什么用处来着?
把变量声明为static有什么用处来着?
------解决方案--------------------属于类的,而不是属于对象实例的
------解决方案--------------------不用声明对象即可访问的。
------解决方案--------------------先明白什么是动态的,什么是静态的,
我们有了对象实体以后才有对象的实体属性,而静态的不需要对象就在内存中有一块“地”的,所以可以直接指定后调用,比动态方法来的要快,
------解决方案--------------------static 的方法可以不用实例化类就可以调用,比如 类名.方法名
static 的变量不是存在于栈区也不是存在于堆区,而是存在于方法区,由有所有的对象所共享
比如 类A中 static int i=0; A a = new A(); A b = new A(); a.i++;b.i++; 输出i的结果就为2
------解决方案--------------------静态声明 就可以不用实例来调用 就像Color.pink Math.PI 之类相同
------解决方案--------------------静态变量,可以直接通过类名调用,为该类的所有对象所共享.
------解决方案--------------------static 类方法 静态方法
属于类本身,由“类名点”进行调用,因些不能对类中的属性(变量)进行操作,或要操作,必须将变量设为静态变量。
静态方法是在类加载的时候在内存中分配代码区。
在非静态的方法中可以调用静态方法或静态变量。
------解决方案--------------------直属于类的。
------解决方案--------------------static 若与 final 配合的属性,一般用于常量声明,如 Math.PI, Integer.MAX_VALUE, Calendar.YEAR 等等。
若是单独的 static 属性,一般用于在类的对象之间进行共享的数据。
------解决方案--------------------都说的很好,复习一下!
------解决方案--------------------static修饰变量,意味这个变量在内存中只有一个副本,被所有对象共享,用类名或者对象名都可以访问该变量
------解决方案--------------------static 修饰静态变量的
可直接通过类名调用
------解决方案--------------------静态变量,STATIC类只能调用静态方法
静态变量可以直接用类名调用或者方法名
------解决方案--------------------1.运行一个程序,你至少要开辟一块静态内存
2.不需要创建对象,就要访问某个方法
而static就是这样一个关键字,声明了static后就表示上述两个目的