草庐IT

弱引用

全部标签

java - int 不能取消引用

我刚开始学习java(我正在学习microedition),但在以下类(class)中遇到了这个错误:“intcannotbedereferenced”:classDCanvasextendsCanvas{publicDCanvas(){}publicvoiddrawString(Stringstr,intx,inty,intr,intg,intb){g.setColor(r,g,b);//Theerrorishereg.drawString(str,x,y,0);//andhere}publicvoidpaint(Graphicsg){g.setColor(100,100,220);

Java:如何从 AbstractAction 对象引用 GUI 组件?

通常需要根据另一个GUI对象的状态来更改其他GUI对象的行为。例如。按下按钮时,标签应更改其名称。但是,当我使用像JButtonmyButton=newJButton(myButtonAction);这样的AbstractAction对象时,我需要在继承自AbstractAction的对象中引用GUI对象。我应该只在GUI中创建AbstractAction对象,然后将所有必要的GUI引用传递给AbstractAction对象,还是这会被认为是不好的风格?为了使它更具体://AbstractActionpublicclassMyActionextendsAbstractAction{pu

Java 泛型和集合阅读引用

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。要求我们推荐或查找书籍、工具、软件库、教程或其他场外资源的问题对于StackOverflow来说是偏离主题的,因为它们往往会吸引自以为是的答案和垃圾邮件。相反,请描述问题以及迄今为止为解决该问题所做的工作。关闭8年前。Improvethisquestion虽然我知道泛型和集合的一些工作知识,但也可以说有一些使用集合API的实践经验。但是当涉及到一些关于泛型的良好知识时,我必须说我总是依靠谷歌来找到我的答案。我正在寻找一些引用资料以深入了解泛型和集合,欢迎任何在线引用资料或书籍建议。我不确定这个问题的建

java - 为什么引用类型存储在堆中

我确实知道在Java中(也许在.net中也是如此),基元存储在堆栈中,而引用类型存储在堆中。我的问题是我不了解此行为的过程/缺点。为什么我们不能引用堆栈中的内存位置呢?.我在谷歌上搜索时找不到合适的解释(也许我很烂),但如果你们能提供一些见解,我将不胜感激谢谢。 最佳答案 IdoknowthatinJava,(perhapsin.nettoo),primitivesarestoredonstacks,whereasreferencetypesarestoredonheaps.没有。它不取决于它是原语还是引用。使用栈还是堆取决于作用域

java - 在 Intellij IDEA 中使用热键为方法自动生成类型和对返回对象的引用

如何在IntellijIDEA中使用热键自动获取方法返回对象的类型?很多时候你需要修改这样的行:myinstance.getMyMethod();在以下内容中:IMySomeObjectmysomeobject=myinstance.getMySomeObject();我希望IDEA自己为我完成以节省时间。我不想探索方法的签名,找到它的返回类型并使用特定类型的返回对象手动创建此引用。不方便。 最佳答案 使用IntroduceVariable重构。选择myinstance.getMyMethod();按++V你会看到一系列的名字来给它

java - 获取对 Java 的默认 http(s) URLStreamHandler 的引用

我有一个需要在我的项目之一中使用的库,不幸的是,它注册了自己的URLStreamHandler来处理http-URL。有没有办法获取对Java默认http-和https-URLStreamHandlers的引用,这样我就可以在URL的构造函数中指定其中一个来打开标准的http不使用被库覆盖的协议(protocol)连接? 最佳答案 找到了:sun.net.www.protocol.http.Handler有了它,我现在可以:URLurl=newURL(null,"http://...",newsun.net.www.protocol

java - 注册了多个 UserDetailsS​​ervice。请在 <remember-me/> <openid-login/> 或 <x509/> 元素中使用特定的 Id 引用

我正在尝试使用springsecurity启用记住我的功能但是,我似乎在remember-me元素的某处指定了userService?我该怎么做。我在启动tomcat时遇到的错误是MorethanoneUserDetailsServiceregistered.PleaseuseaspecificIdreferenceinorelements. 最佳答案 好吧,这并不难,以防万一其他人发现spring文档相当难以导航: 关于java-注册了多个UserDetailsS​​ervice。请在

通过引用/值传递的 Java String 不可变

您好,我正在为我的scja考试而学习,我有一个关于通过ref/value传递的字符串以及它们如何不可变的问题。以下代码输出“abcabcfg”。我想知道的是为什么会这样?我不明白方法f内部发生了什么。字符串是按值传递的,所以它肯定应该在方法内部更改为“abcde”吗?因为如果b+="fg"附加到字符串,为什么它在方法内部不起作用?谢谢!publicclassTest{publicstaticvoidmain(String[]args){Stringa=newString("abc");Stringb=a;f(b);b+="fg"System.out.println(a+""+b);}p

java - 两次获得完全相同的对象引用的机会有多大

我有时会假设如果oldObject!=newObject则对象已更改-在大多数情况下这似乎是一个合理的假设,但它真的是一个错误的假设吗?简而言之,下面的代码在什么情况下会打印出“Same!”?staticWeakReferenceoldO=null;...Objecto=newObject();oldO=newWeakReference(o);//Dosomestuffwitho-couldtakehoursorevendaystocomplete....//Discardo(orletitgooutofscope).o=null;//Morestuff-couldbehoursord

java - 每个循环的 Java 是否返回引用或引用副本?

我知道Java并没有真正使用精确的按引用传递,而是按引用传递副本。这就是为什么仅尝试交换引用的交换函数在Java中不起作用的原因。for-each循环也能做到这一点吗?例如,给定以下代码...for(Constraintc:getLeafNodes(constraintGraph)){c=newConstraint();}...我想遍历一个递归定义的树状结构,并找到所有叶节点。每个叶节点都需要替换为一个新的空节点。这会按照我的预期进行,还是只是将对每个叶节点的引用的副本设置到一个新节点?我在另一段通过单元测试的代码上写了一个类似的方法,这让我觉得for-each循环使用引用,而不是引用