标题:关于静态上下文什么意思的问题
只看楼主
sunspirit
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-4-10
 问题点数:0 回复次数:3 
关于静态上下文什么意思的问题

public class Test{
public static void main(String [] args){
TheInterface a = new A();
TheInterface b = new B();
choose(a);
choose(b);
}

public static void choose(TheInterface x){//若这里不申明为 static 则error为无法从静态上下文中引用
//非静态方法 ?? 我不明白是什么意思..
x.print();
}
}


interface TheInterface{
void print();
}

class A implements TheInterface{
public void print(){
System.out.println("this is A");
}
}

class B implements TheInterface{
public void print(){
System.out.println("this is B");
}
}

搜索更多相关主题的帖子: 静态上下文 void TheInterface public 
2007-04-18 11:05
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
得分:0 

在静态方法里面只能调用静态方法或者静态成员变量

如果想在静态方法里面访问非静态的东西,你得先生成一个对象,然后通过这个对象去调用非静态的东西


可惜不是你,陪我到最后
2007-04-18 13:03
sunspirit
Rank: 1
等 级:新手上路
帖 子:41
专家分:0
注 册:2007-4-10
得分:0 

哦~原来是这样
public class Test{
public static void main(String [] args){
TheInterface a = new A();
TheInterface b = new B();
a.print();
b.print() ; }
}
那这样就应当没有问题吧

谢谢斑竹 也谢谢楼主...哈哈

2007-04-18 13:28
fcnh1983
Rank: 1
等 级:新手上路
帖 子:665
专家分:0
注 册:2005-8-31
得分:0 

问题是没问题,但接口也不是这样用吧...这样的话你也就没必要定义接口了


^^多谢赐教!!无以为报只好以身相许!!!^^谢谢,不用谢,要谢的,多说不用了^^如果真的要谢,那就嫁给我吧,好啊^^
2007-04-18 16:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-132804-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.041406 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved