我有一个类,一方面,感觉从公共(public)方法返回InputStream是正确的,例如publicclassMyClass{privateFile_file;...publicInputStreamgetInputStream(){returnnewFileInputStream(_file);}}但是,我对这样做也非常谨慎,因为它让调用者有责任关闭此流。我可以通过哪些方式避免此问题? 最佳答案 取决于为什么这是你眼中的问题。如果您绝对必须返回一个InputStream并且所讨论的文件不是太大,您可以将整个文件缓冲到字节数组中,
我尝试在Mac中使用PlayFramework2.4和JDK8启动应用程序,当我使用./activatornewProjectplay-java下载基础时,模板代码包含下一个:项目/app/controlles/Application.javapackagecontrollers;importplay.*;importplay.mvc.*;importviews.html.*;publicclassApplicationextendsController{publicResultindex(){returnok(index.render("Yournewapplicationisrea
以下是我的ProtectedConstructor.java源码:packageprotectCon;publicclassProtectedConstructor{publicintnothing;ProtectedConstructor(){nothing=0;}}下面是UsingProtectedCon.java来源:packageother;importprotectcon.ProtectedConstructor;publicclassUsingProtectedConextendsProtectedConstructor{//**Line4**publicstaticvoi
我最近与friend讨论枚举与公共(public)静态最终常量。我告诉他publicstaticfinalconstants比枚举更易于维护,有时速度更快(android开发人员文档证实了这一点),也更方便。我还说过,使用枚举也会失去功能:您不能扩展枚举。您不能实例化枚举。然后他说,如果您需要实例化或扩展枚举,则不应使用枚举。然后我回答说,这就是为什么我们应该只使用常量,因为它更易于维护;如果在项目中期我们需要实例化一个枚举或扩展它怎么办?然后我们将不得不改变一切。为了说明我的观点而制作的枚举与常量示例:publicenumWeekDay{/**Wewillstartat1fordem
我有一个Main.java文件:publicclassMain{privateEntityDrawerentityDrawer;publicvoidsetEntityDrawer(EntityDrawerentityDrawer){this.entityDrawer=entityDrawer;}publicEntityDrawergetEntityDrawer(){returnentityDrawer;}}classEntityDrawer{privateEmpleadoempleado;publicEmpleadogetEmpleado(){returnempleado;}publi
我只是想知道是否有一种方法可以通过一个简单的按钮或其他东西使公共(public)项(字段、方法)成为私有(private)publicGroupwQ;publicGroupwA1;publicGroupwA2;publicGroupwA3;publicGroupwG1;publicGroupwG2;publicGroupwG3;publicGroupwS1;publicGroupwS2;publicGroupwB1;publicGroupwB2;例如,一步将所有这些字段设为私有(private),而无需将公共(public)替换为私有(private)。顺便说一句,我使用Intelli
我正在使用ApacheCommonsEmail在我的网络应用程序中运行良好。现在我需要通过附件发送文档,我遇到了一些问题。我需要从数据库中获取文件(作为BLOB)并将其添加为附件。CommonsEmail似乎不支持流附件,它只从路径中获取文件。我需要知道这里的最佳做法是什么?我是否还需要将文件保存在目录结构中,以便它适用于CommonsEmail?,或者,有什么方法可以使用流式传输内容本身以添加为附件? 最佳答案 使用MultiPartEmail#attach(DataSourceds,Stringname,Stringdescri
在一次采访中,它被要求找到两个字符串数组之间的非公共(public)元素。Eg:Stringa[]={"a","b","c","d"};Stringb[]={"b","c"};O/pshouldbea,d我已经回答了在Java中Set是使用HashTable实现的问题。使用Set的代码要简单得多:String[]a={"a","b","c","d"};String[]b={"b","c"};Setset=newHashSet(a.length);for(Strings:a){set.add(s);}for(Strings:b){set.remove(s);}returnset;现在我的
这个问题在这里已经有了答案:whymainmethodcan'tbeofdefaultscope?[duplicate](9个回答)WhyistheJavamainmethodstatic?(37个答案)关闭8年前。为什么main声明为public和static?publicstaticvoidmain(Stringarg[]){}根据java中的ans"Themethodisstaticbecauseotherwisetherewouldbeambiguity:whichconstructorshouldbecalled?"
这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Whycantwehavestaticmethodinaninnerclass?大家好,在Java中,我们不能在[public]内部类中声明静态方法的确切原因是什么,除非这些内部类也被声明为静态的?顶级类可以拥有任意数量的静态方法而不需要任何特殊的修饰符