如何将Java API的内部结构隐藏到世界其他地方
发布时间:2020-12-15 00:09:24 所属栏目:Java 来源:网络整理
导读:我正在开发一个 Java Api来做事情(秘密,呃,他们). 有没有办法隐藏类,以及API的内部结构? 我到现在为止发现: 使用内部类(丑陋的方式,我不想把全部放在类文件中) 所有类在一个包中,以便我可以使用“包”-visibilty(也丑陋,我需要更多的包) 例: ---package n
我正在开发一个
Java Api来做事情(秘密,呃,他们).
有没有办法隐藏类,以及API的内部结构? 我到现在为止发现: >使用内部类(丑陋的方式,我不想把全部放在类文件中) 例: --- package net.my.app; //this is the Public Access class MyPublicClass{ public void somePublicFunction(){ //access to not visibil classes } } --- package net.my.app.notvisible: //this is what i want to hide class MyNOTPublicClass{ ... } --- 有任何想法吗? 解决方法
>使用界面来定义你的
应用程序 >创建主入口点以访问服务,仅返回接口 >我不会打扰实际隐藏实现类.你永远不会真的将它们隐藏在Java中,那些技术上有兴趣的人可能只是用一个调试器启动你的应用程序.例如,不提供公共构造函数 关于这个评论:
实现我的第二个项目符号的一种方法就是使用一个服务查找类,例如 public class Lookup { private static final Foo foo = new FooImpl(); public static Foo getFoo() { return foo; } } Foo是一个接口,FooImpl是一个实现类(如果要强制它不能被客户端实例化,它可以是私有的) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |