问题描述
- 实例方法 静态方法 实例变量 静态变量之间的关系问题
-
java中实例方法 静态方法 实例变量 静态变量之间的关系问题静态变量可以方法静态方法
实例变量可以访问静态方法
实例变量可以访问实例方法
以上说法对么
解决方案
不都是对的
这个主要是考静态变量/方法,与一般变量/方法的概念:
声明为static的方法有以下几条限制: ·
A,它们仅能调用其他的static 方法
B,它们只能访问static数据
C,它们不能以任何方式引用this 或super(this涉及到对象,super 与继承有关)
解决方案二:
子类与父类实例变量,静态方法调用
java 静态变量与方法实例变量与方法的内存占用
解决方案三:
子类与父类实例变量,静态方法调用
java 静态变量与方法实例变量与方法的内存占用
解决方案四:
静态方法 和 静态变量 是可以直接访问,不需要创建这个类的一个对象,如下,在TestB中可以直接使用TestA中的i和 方法 add();
public class TestA{
public static int i = 1;
public int b = 0;
public static int add(int a, inb){
return a+b;
}
public void setB(int b){
this.b = b;
}
}
public class TestB{
int a = TestA.add(TestA.i, TestA.i);
system.out.println("a==="+a); //a = 2
}
而实例变量和方法 则需要 先创建一个对象
如:
TestA A= new TestA();
A.set(2);
int s = A.b;