草庐IT

b-Class-Interface

全部标签

java - 如果常量接口(interface)反模式是一种犯罪行为,那么 Swing 为什么要这样做呢?

我正在制作一个swing应用程序,并意识到我有几个类需要访问同一组常量。我无法让自己宣布其中一个是它们的主要持有者并将它们全部放在那里并让其他人引用它;我想,嘿,我会让它们都从某个共同的地方继承,但Java不做多重继承,但我可以在事物上放置无限接口(interface)。所以我想到了将它们全部转储到一个界面中(这是真的,我没有做任何研究就自然而然地想到了)。后来才知道这是异端。“事实上,它有一个名字:常量接口(interface)反模式”-asdiscussedhere(以及替代解决方案(我选择采用))。在我查看JDialog和JFrame的源代码之前,我对此一直很好,它们是这样读的:

java - 枚举实现接口(interface)、接口(interface)和方法可见性

我刚刚看到下面的代码,这让我有点吃惊,不过我在这里将它转换为一个简单的SSCEE:custompackage.package1.MyEnum.javapublicenumMyEnumimplementsMyInterface{CONSTANT_ONE(){@OverridepublicvoidmyMethod(){//dosomethingveryinteresting}},CONSTANT_TWO(){@OverridepublicvoidmyMethod(){//dosomethingveryinteresting}};}interfaceMyInterface{voidmyMet

java - 如何确保从子类中的方法在抽象父类(super class)中调用某些方法 (Java)

我有一个带有方法的抽象父类(superclass)AdoSomething().A的子类必须实现doSomething(),但也有一些公共(public)代码应该在每次子类调用时调用doSomething().我知道这可以这样实现:publicclassA{publicvoiddoSomething(){//Thingsthateverysub-classshoulddo}}publicclassBextendsA{publicvoiddoSomething(){super.doSomething();//Doingclass-B-specificstuffhere...}}虽然这似乎

java - 将 Java ArrayList<Custom Class> 转换为 ArrayList<Object>

我正在尝试将SomeClass类的ArrayList转换为Object类的ArrayList。Object的这个新的ArrayList将被传递给一个函数。我目前做了以下事情://convertArrayListtogenericArrayListObject[]objectArray=someClassList.toArray();ArrayListobjects=newArrayList();for(inti=0;iobjects){//dosomethingwithobjects}是否有更有效或“标准”的方法来做到这一点?首先我做的是“错的”吗?将其转换为Object类的Array

java - 将父类(super class)对象作为参数传递给子类构造函数(java)

我已经做了一些搜索,但我要么没有问正确的问题,要么没有记错。无论如何,在Java中,我想知道是否可以将父类(superclass)对象作为参数传递给子类,以及使该对象的数据可用于该类的父类(superclass)的最有效方法是什么。代码示例:publicclasssuperclass{Stringmyparm1;StringmyParm2;intmyParmN;publicsuperclass(Stringp1,Stringp2,intpn){this.myparm1=p1;this.myparm2=p2;this.myParmN=pn;}//othermethodshere}publ

Java,将Class的实例转换为HashMap

如果我有这样的类(class):classMyObject{publicintmyInt;publicStringmyString;}是否可以在不实现转换代码的情况下将此类的实例转换为HashMap?MyObjectobj=newMyObject();obj.myInt=1;obj.myString="string";HashMaphs=convert(obj);hs.getInt("myInt");//returns1hs.getString("myString");//returns"string"Java有没有提供那种方案,还是需要自己实现convert?我的类(class)有5

java - 如何将所有 .class 文件从 .jar 文件转换为 .java 文件

我有一个.jar文件,当我提取它时,它会为我提供该jar文件中存在的所有.class文件。我已经使用http://jd.benow.ca/反编译了所有的.class文件工具,但我希望所有.class文件都应保存到.java文件中。现在我只能看到代码,但扩展没有转换为.java。任何人都请帮助我。 最佳答案 你可以使用javadecompilers及其完美的作品在下一步中,您使用上传和反编译进行反编译,并显示此页面那只是复制jarname.zip中的package文件夹,然后粘贴到您的项目中.我测试了它对我有用。你可以看到这个answ

java - 接口(interface)设计 - 是否有访问方法的命名约定?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion我有一个关于java接口(interface)设计的问题,涉及命名关闭访问方法。通常我经常在我的接口(interface)中使用“get”前缀访问方法,当我没有setter方法时也是如此。例如:publicMyObjectgetTask(intid,Stringversion);我考虑通过将方法重命名为来影响我的接口(interface)的大量重构publicMyObjectfindTas

java.lang.NoSuchFieldError: Class com.sun.tools.javac.tree.JCTree$JCImport does not have member fiel

如何解决问题java:java.lang.NoSuchFieldError:Classcom.sun.tools.javac.tree.JCTree$JCImportdoesnothavememberfield‘com.sun.tools.javac.tree.JCTreequalid’看网上说是因为lombok不兼容问题,修改lombok版本后可以正常编译实际操作下来,发现java版本不对应也会出现这种问题,遇到这种问题的可以看看自己的java版本对不对如下图

java - MockClassLoader 无法访问 jdk/internal/reflect 父类(super class) jdk.internal.reflect.MagicAccessorImpl

我正在将一个项目迁移到Java9,在我切换到新的Java版本后测试开始失败,似乎PowerMock正在尝试访问它无法访问的一些类。Testsrun:1,Failures:0,Errors:1,Skipped:0,Timeelapsed:0.973secma​​ven-surefire-pluginmaven-surefire-plugin2.19.1**/*Test.java**/*Test.groovy**/*Spec.*always--add-modulesjava.xml.bind--add-modulesjava.activation--add-opens=java.base/