在同一个项目中,我有两个软件包,第一个软件包包含一个具有以下代码的类:

package com.ginger;

public class SimplePrint
{

    public SimplePrint(){}

    public static void print(Object obj)
    {
        System.out.println(obj);
    }
}


我想在另一个包的另一个类中使用print()方法,但是要在同一项目中使用。

import com.ginger.*;

public class MainClass
{

    public static void main(String[] args)
    {
        print("Some");
    }
}


但是编译器告诉我第二类的方法print()未定义。

同时,我能够在第二个类中创建对象SimplePrint s = new SimplePrint()

我是编程的新手,请问如果我询问简单的事情。

最佳答案

有两种方法可以做到这一点:

非静态

删除方法staticprint关键字并创建该类的实例

SimplePrint simplePrint = new SimplePrint();


并做到这一点

simplePrint.print("");


或将以上内容合并为一行:

new SimplePrint().print("");


静态的

您保留print方法static并执行此操作

SimplePrint.print("");

10-06 09:18