java 一个类文件中的private方法想在另一个类文件中调用怎么办,前提是不改变修饰符。

2025-04-13 10:14:43
推荐回答(4个)
回答1:

可以在这个类中预留一个public 的方法作为入口。一般规范化的java程序,成员变量都是private保护,然后用的时候public预留出去。private 是继承不了的。private只有本类引用,继承至少为default权限。创建类对象更不用说了,private就是为了不让你创建对象时直接用的。

回答2:

可以通过反射机制去进行调用。

public class A {

private void a() {
System.out.println("............");
}

}
第二个类(调用的类)
import java.lang.reflect.Method;

public class B {

public static void main(String[] args) {
try {
Method method = A.class.getDeclaredMethod("a", new Class[]{});
method.setAccessible(true);
Method.invoke(new A(), new Object[] {});
}
catch (Exception e) {
}
}
}

回答3:

通过java反射机制。
但是既然你已经将方法定义成private访问权限了,为何还要在类外部使用呢。虽然通过反射机制可以访问,但这确违背了设计者的初衷。

回答4:

使用继承 不重载就不用改变修饰符了~