草庐IT

public-method

全部标签

Java 泛型 : how to get a generic type from a method?

虽然我的问题是关于Java泛型的,但我已经放了一些与JPA相关的代码来向您展示真实的上下文。我正在使用JPA2.0和基于CriteriaAPI的查询。我所有的查询都遵循相同的模式(比较简单的属性;不需要路径导航),所以我试图编写一个通用类来处理JPA,同时将业务逻辑保留在单独的类中。我的目标是有一个方法,给定一个实体类型和一个存储定义标准的对(字段名称->期望值)的映射,返回一个具有某些实体字段值的bean(或bean集合).我所有的实体都实现了Persistible接口(interface),而我所有的传输对象都继承自QueryBean.我认为那些类与问题无关,因此我跳过了它们的代码

java - 卡在 java.net.SocketInputStream.socketRead0(Native Method)

我在java.net.SocketInputStream.socketRead0(NativeMethod)上卡住了。请看下面的线程转储,它已经处于这种状态3个小时了。Thread-0"prio=10tid=0x00007facd02a5000nid=0x309runnable[0x00007facd4a43000]java.lang.Thread.State:RUNNABLEatjava.net.SocketInputStream.socketRead0(NativeMethod)atjava.net.SocketInputStream.read(SocketInputStream.

java - 除非那些内部类也被声明为静态,否则我们不能在 [public] 内部类中声明静态方法的确切原因是什么?azi

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:Whycantwehavestaticmethodinaninnerclass?大家好,在Java中,我们不能在[public]内部类中声明静态方法的确切原因是什么,除非这些内部类也被声明为静态的?顶级类可以拥有任意数量的静态方法而不需要任何特殊的修饰符

java - 试图了解 "both methods have same erasure, yet neither overrides the other"的情况

这个问题在这里已经有了答案:Methodhasthesameerasureasanothermethodintype(7个答案)关闭4年前。我正在尝试解决一个问题,我想出了这个解决方案(简化):packagehelp;publicclassProblem{privatestaticclassA{publicvoidfoo(Tt){}}privatestaticclassB{}privatestaticclassCextendsA>{publicvoidfoo(Tt){}}}它不会编译,因为“help.Problem.C中的foo(T)与help.Problem.A中的foo(T)冲突;

java - 为什么 java.awt.Dimension 有公共(public)变量?

public变量的类在封装中被认为是弱的,这不是一个糟糕的设计实践吗?如果是这样,为什么java.awt.Dimension有2个公共(public)变量width和height? 最佳答案 我认为公开公共(public)字段并不违反封装本身。封装是实体的属性,实体内部隐藏着复杂的内部结构。这个复杂的结构不能直接访问,因此没有被破坏的风险。它只能通过公共(public)方法访问,这使得它们可以很好地工作并且不会破坏复杂的内部结构。例如,我们无法直接访问HashMap的哈希表,也无法破坏它。我们只使用get和put方法来正确处理哈希表

java - 我应该把 public static void main(String[] args) 方法放在哪里?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭8年前。Improvethisquestion我认为它对程序输出没有任何影响,但是我应该把它放在什么类中publicstaticvoidmain(String[]args){//...}我程序中的方法?创建一个单独的类或将它放在一个做其他事情的类中是更好的形式吗?如果我应该把它放在一个做其他事情的类中,哪个类?有关系吗?这实际上只是约定俗成的事情。通常我创建一个单独的类或将其放在处理gui的类中,但我想知道正确的做法。

java - Java 中的 "primitive interface method"是什么?

我正在读《EffectiveJava》,这里引用这本书:Theinterfacedefinesthetype,perhapsprovidingsomedefaultmethods,whiletheskeletalimplementationclassimplementstheremainingnon-primitiveinterfacemethodsatoptheprimitiveinterfacemethods.Extendingaskeletalimplementationtakesmostoftheworkoutofimplementinganinterface.Thisisth

java - 获取 java.rmi.UnmarshalException : unrecognized method hash: method not supported by remote object

我是RMI技术的新手。当我运行rmi客户端程序时,出现异常:java.rmi.UnmarshalException:unrecognizedmethodhash:methodnotsupportedbyremoteobject。我用的是jdk1.5远程方法的参数是序列化对象。这些是服务器代码...这是远程接口(interface)packageinterfacepackage;importjava.rmi.Remote;importjava.rmi.RemoteException;publicinterfaceServerInterfaceextendsRemote{publicvoi

java - 数字文字的自动装箱 : wrapper initialization vs passing method arguments inconsistency

请考虑两种情况://1Shorts=10;//obviouslycompiles//2takeShort(10);//error-intisnotapplicable//where:staticvoidtakeShort(Shorts){}我假设情况1被编译器更改为:short_temp_s=10;Shorts=Short.valueOf(_temp_s);您能否解释一下编译器在情况2中试图做什么,所以它无法编译?如果它不像案例1那样尝试应用自动装箱,那么为什么?编辑johnchen902答案中对JSL的引用解释了编译器的行为。仍然不完全清楚为什么JLS不支持方法调用转换的“缩小原始转

java - 为什么在静态上下文中使用实例方法时 javac 会发出 "error: method in class cannot be applied to given types"?

考虑以下(无效的)Java程序:publicclassTest{publicstaticvoidmain(String[]args){int[]ints={1,2,3,4,5};print(ints);}publicvoidprint(int...ints){for(inti:ints){System.out.print(i);}}}我希望出现与此类似的错误:Cannotmakeastaticreferencetothenon-staticmethodprint(int[])fromthetypeTestatTest.main(Test.java:5)相反,javac发出:Test.j