gpt4 book ai didi

java - 把我的类放到别人的包里去访问包可见的方法?

转载 作者:行者123 更新时间:2023-11-30 08:41:48 24 4
gpt4 key购买 nike

我理解这当然不是一个好的做法,但是 Java 是否提供任何机制来防止访问包私有(private)方法/属性?如果不是,是否意味着:

package com.other_people_other_company;

public class MyClass {
// Let's hack! Access all package privates
}

有效吗?

编辑:

答案中提到了:

Name: myCompany/myPackage/
Sealed: true

这对我来说是新信息。但是,如果我通过分发我的一 jar 并在那里密封其他人的包裹来破坏怎么办?例如。 名称:org.apache 密封:true

最佳答案

假设 .JAR 分发,您可以 seal the packages通过将以下行添加到 META-INF/MANIFEST.MF:

Name: myCompany/myPackage/
Sealed: true

一些注意事项:

  • 每个包都需要自己的条目。
  • 这不会阻止狡猾的人从 list 文件中删除行并在内部重新分发它。如果这是一个问题,您可能需要研究一些 self 验证技术,例如在密封包中强制执行类以检查 list 是否未受影响。

关于java - 把我的类放到别人的包里去访问包可见的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34836363/

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