草庐IT

Non-Public

全部标签

java - 为什么必须将main方法声明为public...为什么JVM不能执行private main方法

通常我在各种书籍中发现main方法应该是公共(public)的,因为它应该对类加载器可见。但是JVM执行(或提供特殊处理)各种私有(private)方法,例如ObjectOutputStream中的readObject/writeObject方法。 最佳答案 很明显,您的程序的入口点应该是可见的。 关于java-为什么必须将main方法声明为public...为什么JVM不能执行privatemain方法,我们在StackOverflow上找到一个类似的问题:

java - 多个 JVM 进程是否可以共享公共(public)类的内存?

我想在我的网络服务器上运行多个Java进程,一个用于每个网络应用程序。我正在使用具有大量支持类和jar文件的Web框架(Play),并且Java进程使用大量内存。一个Play进程显示大约225MB的“常驻私有(private)”内存。(我正在使用Java1.7.0_05在MacOSX上对此进行测试。)特定于应用程序的代码可能只有几MB。我知道典型的JavaWeb应用程序是添加到一个服务器进程(Tomcat等)的jars,但运行Play的标准方式似乎是作为一个独立的应用程序/进程。如果这些是C程序,那么这200MB中的大部分将是共享库,而不是在每个应用程序中重复。有没有办法在Java中实

java - @JsonInclude(Include.NON_NULL) 没有按预期工作

我在Response类上添加了@JsonInclude(Include.NON_NULL)注释。@JsonInclude(Include.NON_NULL)publicclassResponse{@JsonPropertyprivateStringmessage;//getter-setters}如果值为null,则该属性不包含在JSON中但我仍然将此属性作为NULL。{"message":null}可能是什么原因?我错过了什么吗? 最佳答案 我试过了@JsonSerialize(include=Inclusion.NON_NULL

java - 如何解决 At-clause should have a non-empty description? - 检查样式 - Java

我在eclipseluna的checkstyle插件中使用googlejava样式。在我的java文档中看到此错误,但似乎无法找到解决方法。它很小,但它困扰着我。我的javadoc:/***Thisisadescriptionofsomething**@throwsException*/错误在@throws行,错误:At-clauseshouldhaveanon-emptydescription 最佳答案 通常,你应该写*@throwsExceptionwhenthisexceptionalconditionhappens例如*@t

Java 8 流 : get non repeated counts

这是输入和输出的SQL版本:withtab1as(select1asidfromdualunionallselect1asidfromdualunionallselect2asidfromdualunionallselect2asidfromdualunionallselect5asidfromdual)selectidfromtab1groupbyidhavingcount(id)=1;OutputisId=5andcountis1因为5是非重复的。我如何使用JAVA8流实现它?我在下面尝试过,但显然它给出了错误的结果ListmyList=newArrayList();myList.

java - 如何使用单个 replaceAll 查找 Java 中两个字符串的公共(public)字符?

假设我有:Strings="1479K";Stringt="459LP";我想回去StringcommonChars="49";两个字符串之间的共同字符。显然可以使用如下标准循环:StringcommonChars="";for(i=0;i但是我希望能够使用replaceAll在一行中完成此操作。这可以按如下方式完成:StringcommonChars=s.replaceAll("["+s.replaceAll("["+t+"]","")+"]","");我的问题是:是否可以使用一次replaceAll调用来做到这一点?什么是正则表达式?我想我必须使用某种前瞻性,但当我想到它时,我的大

Java NIO : How to know when SocketChannel read() is complete with non-blocking I/O

我目前正在使用非阻塞SocketChannel(Java1.6)作为Redis服务器的客户端。Redis直接通过套接字接受纯文本命令,由CRLF终止并以类似方式响应,一个简单的例子:SEND:'PING\r\n'RECV:'+PONG\r\n'Redis还可以返回大量回复(取决于您的请求),其中包含许多以\r\n结尾的数据部分,所有这些都作为单个响应的一部分。我正在使用标准的while(socket.read()>0){//appendbytes}循环从套接字中读取字节并将它们重新组装到客户端回复中。注意:我没有使用选择器,只是连接到服务器的多个客户端SocketChannels,等待

java - 包私有(private)类中的公共(public)成员

我想知道在包私有(private)类中有公共(public)成员是否可以(不被认为是不好的做法)。我倾向于将public关键字添加到我的默认可见性类的成员,以指示此类成员是类API的一部分。我这样做只是为了可读性,因为在这种情况下,公共(public)成员与没有任何访问修饰符的成员具有基本相同的可见性(即包可见性)。对吗?例子:classModuleImplementationClass{privateintfieldA;privateStringfieldB;privatevoidsomeClassInternalMethod(){//impl}publicintdoSth(){//

java - 无法在内部类中声明 Public static final String s = new String ("123")

我尝试声明一个类,如下所示classOuter{privatefinalclassInner{publicstaticfinalStrings1=newString("123");publicstaticfinalbyte[]bytes=newbyte[]{0x00,0x01};publicstaticfinalStrings2="123";publicstaticfinalbytebyte1=0x02;}}在上面的代码中,s1和bytes无法编译,但s2和byte1可以编译。如果我将整个常量声明放在外部类中,它就可以正常工作。我错过了什么。有帮助吗? 最佳

java - 创建泛型类的公共(public)内部类的实例

所以我有如下内容:publicclassEnclosing>{//non-relevantcodesnippedpublicclassInner{privateTvalue;publicInner(Tt){value=t;}}}万物皆可编译,天下皆大欢喜。但是,每当我尝试创建Enclosing.Inner的实例时如下,我不行:newEnclosing.Inner(5);出现以下错误:CannotallocatethemembertypeEnclosing.Innerusingaparameterizedcompoundname;useitssimplenameandanenclosin