草庐IT

object_class

全部标签

java - 当方法的签名定义为 Collection<class> 时,为什么方法不能采用 Collection<subClass>

我有一个获取SResource对象列表的方法publicstaticListlistTriples(Listsubjects){//...dostuff}为什么我不能这样做ListresultsAsList=newArrayList();resultsAsList.addAll(allResults.keySet());//Icouldpossiblenotuselistsandjustusesetsandthereforegetridofthisline,butthatisadifferentissueListtriples=newArrayList();triples=Triple

java - Java内部类的两个问题(class A { class B { } })

抱歉标题不好,但我想不出更好的标题。我有一个A类和一个B类,它是A的子类,如下所示:(真的有正确的名字吗?“子类”不是为继承保留的吗?)classA{inti=0;classB{intj=1;}}classTest{publicstaticvoidmain(){Aa=newA();Bb=a.newB();Ac=???b???//get"a"back}}从B可以访问A的每个属性,因此a.i和b.i都返回0。现在,我想知道是否有可能从b中检索A类型的原始对象,因为b包含所有一个包含?简单的转换显然无法解决问题。第二个:classA{voidprint(){System.out.printl

java - 父类(super class)的私有(private)方法是如何解决的?

classA{privatevoidsayA(){System.out.println("PrivatemethodofA");}publicstaticvoidmain(Stringargs[]){AinstanceA=newB();instanceA.sayA();}}classBextendsA{}我原以为它会抛出一个运行时异常,因为在编译时编译器检查是否可以在A的引用上调用sayA()并在运行时-time它将检查sayA()是否可以在B的对象上调用。但它反而打印了“A的私有(private)方法”。 最佳答案 可访问性是一个

java - HashMap(键 : String, 值 : ArrayList) returns an Object instead of ArrayList?

我使用(键:字符串,值:ArrayList)将数据存储在HashMap中。我遇到问题的部分声明了一个新的ArrayList“current”,在HashMap中搜索字符串“dictCode”,如果找到则将current设置为返回值ArrayList。ArrayListcurrent=newArrayList();if(dictMap.containsKey(dictCode)){current=dictMap.get(dictCode);}“current=...”行返回编译器错误:Error:incompatibletypesfound:java.lang.Objectrequire

java - GAE 数据存储 : persisting referenced objects

我正在尝试将Java对象持久保存到GAE数据存储。我不确定如何持久化具有(“非平凡”)引用对象的对象。也就是说,假设我有以下内容。publicclassFather{Stringname;intage;Vectoroffsprings;//thisiswhatIcall"non-trivial"reference//ctor,getters,setters...}publicclassChild{Stringname;intage;Fatherfather;//thisiswhatIcall"non-trivial"reference//ctor,getters,setters...}

java - 使用 Eclipse,如何在 Content Assist 中隐藏父类(super class)方法?

例如,我有:JPanelpan=newJPanel();然后我做“平移”。eclipse显示内容辅助。在这个内容帮助中,有JPanel类中的所有方法和所有JPanel父类(superclass)中的所有方法(很多)。我希望eclipse仅向我显示JPanel类的方法,而不是其父类(superclass)的方法。怎么做? 最佳答案 它不是内容辅助,但您可以使用Ctrl+O查看没有父类(superclass)的类的所有方法。 关于java-使用Eclipse,如何在ContentAssist

java.lang.ClassFormatError : Duplicate method name&signature in class file 错误

我们正在将我们的应用程序从Weblogic10.3.0升级到10.3.6。当我们尝试部署它时,我们收到错误:java.lang.ClassFormatError:Duplicatemethodname&signatureinclassfile...经过进一步调查,我们发现问题是由如下代码引起的:interfaceFoo{voidfoo();}interfaceBar{voidfoo();}interfaceBazextendsFoo,Bar{}BazEJBimplementsBaz....这会导致在Baz中生成2个foo方法....ELOImpl.class,这会在我们尝试部署ear文

git cherry-pick 报错 fatal: bad object [commitID]

背景    项目不同模块的功能建立了不同的分支进行开发,后期要将这部分代码从附属分支往主分支上合并,合并过程中出现这个问题,特此纪要!问题    gitcherry-pick[commitID]时报错?错误图录:说明        cherry-pick做的动作是代码合并的操作,出现上面的异常是因为获取对应的合并节点(COMMITID)时获取不到因此提示。但是另一个用户做了commit和push两个动作,所做的处理已经在远程仓库中了。工作原理:    目标是代码合并,你要合并的是别人的代码,此时别人的代码处在远程分支,本地使用cherry-pick合并时在本地仓库中并不存在远端别人提交的代码。

java - CGLIB 无法拦截父类(super class)/超接口(interface)中的方法

可能是我想得不够认真,或者答案真的难以捉摸。快速场景(尝试代码。编译)。考虑一个遗留接口(interface)publicinterfaceLegacyInterfaceNoCodeAvailable{voidlogInfo(Stringmessage);}考虑上述接口(interface)的遗留实现publicabstractclassLegacyClassNoCodeAvailableimplementsLegacyInterfaceNoCodeAvailable{publicabstractvoidexecuteSomething();publicvoidrockItOldSch

java - 从 DependencyDescriptor 访问 "containing class"

我正在开发一个支持上下文相关注入(inject)的实用程序,即注入(inject)的内容现在也可以取决于注入(inject)的位置。记录器注入(inject)是这种技术的常见应用。到目前为止,我已经成功地为HK2和Guice实现了这个,并且对Dagger有一些限制。为了在Spring中解决这个问题,我使用了一个注册了AutowireCandidateResolver的BeanFactoryPostProcessor。但是,为了实现预期的语义,我需要知道实际目标对象的类型,这可能与声明注入(inject)点的类型不同。例如:classBaseClass{@InjectLoggerlogg