2 u011359326 u011359326 于 2016.01.13 13:55 提问

实例方法 静态方法 实例变量 静态变量之间的关系问题

java中实例方法 静态方法 实例变量 静态变量之间的关系问题

静态变量可以方法静态方法
实例变量可以访问静态方法
实例变量可以访问实例方法
以上说法对么

4个回答

91program
91program   Ds   Rxr 2016.01.13 14:17
已采纳

不都是对的

这个主要是考静态变量/方法,与一般变量/方法的概念:
声明为static的方法有以下几条限制: ·
A,它们仅能调用其他的static 方法
B,它们只能访问static数据
C,它们不能以任何方式引用this 或super(this涉及到对象,super 与继承有关)

CSDNXIAON
CSDNXIAON   2016.01.13 14:05

子类与父类实例变量,静态方法调用
java 静态变量与方法实例变量与方法的内存占用
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

CSDNXIAOD
CSDNXIAOD   2016.01.13 14:05

子类与父类实例变量,静态方法调用
java 静态变量与方法实例变量与方法的内存占用
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

lxk_1993
lxk_1993   Rxr 2016.01.13 14:15

静态方法 和 静态变量 是可以直接访问,不需要创建这个类的一个对象,如下,在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;

Csdn user default icon
上传中...
上传图片
插入图片