static方法中需要使用静态变量.假设其他类要使用该方法,该方法里面所使用的变量是非静态的,如果该方法所在的类没有实例化,会导致该方法里面的变量不能实例化,自然该static 方法不能使用…
class Student { private string _name; public int Age = 0; public static void Test() { Student stu = new Student(); stu._name = "dd"; stu.Age = 20; } } 如图,虽然Static修饰的方法不属于类本身,但是还是在private(本类)范围内,所以可以访问到类的私有变量.…
Java是面向对象的语言,所有的变量,方法都是针对对象而言的.一般来说,要调用一个方法,你需要new 这个方法的对象. 什么时候用static? 如果你想要: 对于一个类的所有对象共享一个变量或者是方法,即有一块特定区域的内存,不管多少个对象被new出来,或者是没有对象被new出来,那块内存区域都存在. 如果有个方法,你想在调用它的时候,可以不用通过new它的对象,或者说在这个类没有对象的情况下还是可以调用这个方法. 那么你就可以考虑使用static关键字了 为什么在static方法中不能调用非…
java的static关键字 java中,static修饰的成员变量和成员方法叫静态变量和静态方法,不依赖类特定的实例,被类的所有实例共享. 静态变量或类变量 和 实例变量,区别是: 静态变量在内存中只有一个拷贝(节省内存),JVM只分配一次内存,在加载类的过程中完成静态变量的内存分配,用类名直接访问,也可以通过对象来访问(不推荐,尽量不用). 实例变量在初始化后一个实例时为该实例分配一次内存,多个实例之间的实例变量是独立的 static的方法和变量可直接用类名访问: java中,Static类…
更新记录 [1]2020.02.08-10:32 1.主要编辑了super 正文 我原本是在学习\(super\)关键字,后来突发奇想,能不能在父类中用\(super\)间接调用本类方法呢? 也就是说父类的方法(假设方法名为\(printData\)),通过子类的\(super\)去间接调用. 于是,就有了这样的一段代码: class ChildClass extends Class2{ public static void print() { super.printData(); } } pu…
main方法中声明8种基本数据类型的变量并赋值  char→  int→ long→ float→ double byte→ short→ …
注意:float虽然是4个自减,但是它的取值范围却比8个字节的long要大. float和double只能用来作科学计算或者是工程计算,但在商业计算中我们要用java.math.BigDecimal,通过使用BigDecimal类可以解决上述问题,实例代码如下: package ex;   import java.math.*;   public class BigDecimalDemo {     public static void main(String[] args){         …
好文转载:http://blog.csdn.net/zhangjg_blog/article/details/19996629 开篇 在我的上一篇博客 深入理解Java中为什么内部类可以访问外部类的成员  中, 通过使用javap工具反编译内部类的字节码, 我们知道了为什么内部类中可以访问外部类的成员, 其实是编译器在编译内部类的class文件时,偷偷做了一些工作, 使内部类持有外部类的引用, 并且通过在构造方法上添加参数注入这个引用, 在调用构造方法时默认传入了外部类的引用. 我们之所以感到疑…