gpt4 book ai didi

Java 方法对特定包的可见性

转载 作者:行者123 更新时间:2023-12-01 13:41:05 27 4
gpt4 key购买 nike

我不确定这可能吗?我想创建一个由一些方法组成的java类,允许一些方法通过属性文件、注释或任何其他或某种机制对某些特定包可见。假设 -

package com.a;

public class A {
public a();
public b();
public c();
}

package com.a;

public class A1 {
public A1() {
A a = new A();
a.a(); // Visible when coding
a.b(); // Not visible when coding
a.c(); // Not visible when coding
}
}

package com.b;

public class B {
public B() {
A a = new A();
a.a(); // Not visible when coding
a.b(); // visible when coding
a.c(); // Not visible when coding
}
}

package com.c;

public class C {
public C() {
A a = new A();
a.a(); // Not visible when coding
a.b(); // Not visible when coding
a.c(); // visible when coding
}
}

我之所以这么说,是因为我查看了一些包场景,其中库中 java 类的某些方法无法从外部访问,但这些方法存在于 java.lang.如果我们提取java类,那么我们就可以访问该方法,例如低版本的android tethering类。

任何人都可以建议或了解这些知识......

最佳答案

我认为您可以在 AspectJ 的帮助下实现这一目标或Spring AOP 。尝试编写 @around 切入点,如果从上下文调用您的方法,它将引发一些异常,这是不允许的。

关于Java 方法对特定包的可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20770307/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com