猿问

java在同一个类中两次使用类名时传递变量

public class test extends AbstractTableModel {


    public static void main(String[] args) {

    }


    public String valuePass(int rowIn)

    {

        String value = "open";

        return value;

    }



    test(mdpTEST parentPanel) {

        m_parentPanel = parentPanel;

    }


    ...

}


import demo.test;

public class order{


    public void new() 

    {

        test blah = new test(null);

        String text = blah.valuePass(0);    

    }


}

在上面的代码中,“blah”应该引用公共类“test”,但是我被告知将“test()”的可见性更改为public,因为我在行中收到错误:“test blah =新测试(空);”。我对为什么“blah”没有引用“public class test”以及此处如何使用“test()”的第二个实例感到困惑。我感谢任何帮助理解这个问题!


吃鸡游戏
浏览 255回答 1
1回答

白猪掌柜的

您显示的代码有两个问题1)你不能有new()方法名,因为new它是一个关键字2) Linetest blah = new test(null);正在调用不同包中的测试类的构造函数。因此默认可见性应用于测试类中的 test(...) 构造函数。并且根据java可见性规则,您必须将其公开才能在不同的包中访问它进行这些更改,您的代码应该可以正常工作
随时随地看视频慕课网APP

相关分类

Java
我要回答