问题2:
其他类如何调用主函数所在类的方法如何调用呢?
如:
class Zhu
{
public static void main(String[] args)
{
}
public void test()
{
}
}
class Test
{
public void demo()
{
在这里如何调用主函数所在的 Zhu这个类中的 test 方法?
}
}
想在Test类中的demo方法中调用主函数所在类 Zhu这个类中的test方法,请问如何调用呢?
还望大神回答.
谢谢了!
作者: Keith 时间: 2013-4-10 04:33
问题一:当然不可以 x是哪的? 一, x只是Sd类中的一个局部变量,并不是你所谓的成员变量二,sd类与as类没有任何关系,如何赋值
问题二:要调用一个类的非静态方法,只有new这个类的实例,然后调用
class Test
{
public void demo()
{
new Zhu().test();
}
} 作者: 林声荣 时间: 2013-4-10 08:15
问题一:当然不可以咯,以为x是Sd类中main函数内的局部变量,及时As类继承Sd类也无法使用将其赋值个y;
问题二:如果想调用另一个类中的方法有两个,一个是通过创建要调用的类的对象,另一个是通过要调用的类的名调用(前提是该方法是静态方法),此题中只能通过创建一个对象,来调用;如:
new Zhu().test() //创建一个匿名对象;
或者 Zhu z = new Zhu(); z.test();作者: 黑马-张明 时间: 2013-4-10 09:09 本帖最后由 黑马-张明 于 2013-4-10 09:22 编辑
第一个是肯定不行的,因为他们所在的类不同,之间也没有任何调用关系,所以肯定是不能跨类调用变量的!
第二个从一个类中调用另一个类的方法,如果另一个类中的那个方法是私有的话,就不能直接调用到,如果是其他类型的话看情况,如果是静态的(static)话,直接用类名可以调用到,如果是非静态的,就需要利用另一个类的实例(也就是用那个类生成的对象)来调用。LZ的问的可以像下面这样调用
class Zhu
{
public static void main(String[] args)
{
}
public void test()
{
}
}
class Test
{
public void demo()
{
new Zhu().test();
}