草庐IT

弱引用

全部标签

java - 如何从列表中删除弱引用?

我有一个java对象的弱引用列表。我如何编写一个方法来获取真实对象实例并从该列表中删除它的弱引用?谢谢。 最佳答案 你的意思并不完全清楚,但我认为你可能想要:publicstaticvoidremoveReference(List>list,Treference){for(Iterator>iterator=list.iterator();iterator.hasNext();){WeakReferenceweakRef=iterator.next();if(weakRef.get()==reference){iterator.re

java - 使用 JDK 1.8 时泛型引用不明确

我知道之前有人问过这个问题的变体,我认为我了解Java8类型解析系统,但我收到了一个我认为不应该有歧义的内容的歧义引用错误:importjava.util.ArrayList;importjava.util.Arrays;importjava.util.Collection;importjava.util.List;interfaceFunction{}publicclassMyFns{publicstaticCollectionmap(Functionfn,Collectioncoll){returnnewArrayList();}publicstaticListmap(Functi

java - Eclipse:查找 Java 和 JSF/JSP 中的引用

这个问题在这里已经有了答案:ELproposals/autocomplete/codeassistinFaceletswithEclipse(1个回答)关闭7年前。我在MVC应用程序中有很多遗留模型,并且在模型类中有很多冗余属性。在Eclipse中使用CTRL+SHIFT+G我可以在Java代码中找到引用,但在我的View中找不到,它们主要是JSP或JSF页面。因此,我无法安全地重构代码。那么唯一的选择就是普通的字符串搜索,它不舒服而且更容易出错。有解决办法吗?

java - 为什么内部类的扩展会得到重复的外部类引用?

我有以下Java文件:classOuter{classInner{publicintfoo;}classInnerChildextendsInner{}}我使用这个命令编译然后反汇编文件:javactest.java&&javap-p-cOuterOuter.InnerOuter.InnerChild这是输出:Compiledfrom"test.java"classOuter{Outer();Code:0:aload_01:invokespecial#1//Methodjava/lang/Object."":()V4:return}Compiledfrom"test.java"clas

java - 直接自引用导致循环父类(super class)问题 JSON

我尝试了一些在搜索时发现的方法,但没有任何帮助,或者我没有正确实现。我得到的错误Directself-referenceleadingtocycle(throughreferencechain:io.test.entity.bone.Special["appInstance"]->io.test.entity.platform.ApplicationInstance["appInstance"])它们都扩展了基础实体,并且在基础(父类(superclass))中它也有一个appInstance。基本实体看起来与此类似@MappedSuperclasspublicabstractclas

java - 双向多对多关系中的循环引用

我的实体中存在双向多对多关系。请参见下面的示例:publicclassCollaboration{@JsonManagedReference("COLLABORATION_TAG")privateSettags;}publicclassTag{@JsonBackReference("COLLABORATION_TAG")privateSetcollaborations;}当我尝试将其序列化为JSON时,出现以下异常:`"java.lang.IllegalArgumentException:Cannothandlemanaged/backreference'COLLABORATION_T

java - 返回列表或通过引用修改

在java中,我有一个修改列表内容的方法。是不是更好用:publicListmodifyList(ListoriginalList){//note-myrealmethodusesgenerics//iterateoveroriginalListandmodifyelementsreturnoriginalList;}还是做以下更好:publicvoidmodifyList(ListoriginalList){//iterateoveroriginalListandmodifyelements//sincejavaobjectsarehandledbyreference,theorig

java - 是否可以将方法引用转换为 MethodHandle?

是否可以将方法引用(例如SomeClass::someMethod)转换为MethodHandle实例?我想要编译时检查的好处(确保类和方法存在)以及使用MethodHandleAPI来检查方法的能力。用例:我有当且仅当请求不是由特定方法触发时才需要执行的代码(以避免无休止的递归)。我想要编译时检查以确保类/方法存在,但运行时检查以将调用者与方法进行比较。回顾一下:是否可以将方法引用转换为MethodHandle? 最佳答案 好吧,如果您能承受额外的开销和安全隐患,您可以使用Serializable函数式接口(interface)并

java - 使用相同的连接表引用关联实体的子类时,具有该名称 [user_address] 的表已与实体关联

使用SpringBootstarter,我正在尝试创建一个简单的示例项目,该项目涉及具有多个地址字段的用户。我正在尝试使用@DiscriminatorColumn和@DiscriminatorValue来区分用户可能拥有的不同类型的地址。这是我项目中表格的缩略示例:CREATETABLEuser(idINTAUTO_INCREMENT);CREATETABLEuser_address(user_idINT,address_idINT);CREATETABLEaddress(idINTAUTO_INCREMENT,TYPEVARCHAR(31));这是我想加入的类(class):@Ent

java - 如何递归引用泛型参数?

我已经解决了一个Y组合器问题。刚才发现不能递归引用泛型参数。Y=λf.(λx.f(xx))(λx.f(xx))例如:IntUnaryOperatorfact=Y(rec->n->n==0?1:n*rec.applyAsInt(n-1));IntUnaryOperatorY(Functionf){returng(g->f.apply(x->g.apply(g).applyAsInt(x)));}IntUnaryOperatorg(Gg){returng.apply(g);}//v---Iwanttoremovethemiddle-interface`G`interfaceGextends