java - 为什么我们不能访问java文件中非公共(public)类的方法?

标签 java class methods

class Basics415 {   

    public static void main_hooo(){
        out.println("1234");    
    }

    void main_ho(){
    }       
}

在另一个名为 Basics5.java 的文件中:

public class Basics5 extends Basics415{   

    public static void main(){
        main_hooo();        // We are accessing a public method of Class Basics415 
        main_ho();  // BUT WE CANNOT ACCESS A NON PUBLIC METHOD FROM SAME CLASS 
    }       
}

为什么我们可以访问 main_hooo() 而不能访问 main_ho()

为什么 basic415.main_ho 或 Basic415.main_hooo 在 Basics5 的 main 方法中不起作用?

最佳答案

因为这些方法是静态的,因此需要类来访问它们。

Basics4.method_Inside_Basics4()

所以,在你编辑了一堆代码之后......

public class Basics5 extends Basics415{   

    public static void main(){
        // accessing a static method in a static context.
        Basics415.main_hooo();

        // accessing an instance method in a static context.
        final Basics415 b = new Basics415();
        b.main_ho();
    }       
}

关于java - 为什么我们不能访问java文件中非公共(public)类的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23824033/

相关文章:

java - 研究对象和类

java - 我是否必须将一个类声明为公共(public)(它是程序中唯一没有人会使用的类)

ruby - 在 Ruby 中将方法作为参数传递

Flash游戏骇客,得分是49700?如何提高Flash游戏的安全性?

java - 在 Java 中如何使用没有 'new' 的构造函数?

java - 应用程序在应用程序启动时开始搜索 GPS,而不是在需要时

java - 正则表达式与从 Formatter 对象获取的换行符不匹配

python lxml - 简单地获取/检查 HTML 元素的类

scala - 哪些 Scala 方法返回 null 而不是 Option,为什么?

java - 在java中调用pl/sql函数?