将嵌套类inheritance到子类中

当我阅读这篇文章时,在超类的私人成员部分,我看到了这一行 嵌套类可以访问其封闭类的所有私有成员 – 包括字段和方法。 因此,子类inheritance的公共或受保护嵌套类可以间接访问超类的所有私有成员。 我的问题是我们如何直接访问Derived的Nested类Base (就像我们可以访问任何public protected字段一样)? 和 如果有办法, Derived如何通过Nested访问哪个是Base私有字段? public class Base { protected int f; private int p; public class Nested { public int getP() { return p; } } } class Derived extends Base { public void newMethod() { System.out.println(f); // i understand inheriting protected field // how to access the […]

junitparameterexception方法应该没有参数

通过使用JUnitParameter来测试方法我有一个例外。 我的代码类似于JUnitParameter上的大量示例: private Object parametersForTestSetDistanceFormated() { return new Object[][]{ {100, “_1,__ km”}, {100, “1_,__ km”}, {1100, “11,__ km”}, {110, “1_,1_ km”}, {111, “1_,11 km”}}; } /** * Test of setDistanceFormated method, of class ClientFormated. */ @Test @Parameters public void testSetDistanceFormated(final int exptDist, final String distFormated) { System.out.println(“setDistanceFormated”); ClientFormated instance = new ClientFormated(); instance.setDistanceFormated(distFormated); assertEquals(exptDist, (long) […]

为什么/如何得到错误:NoClassDefFoundError:org / springframework / aop / framework / ProxyFactory

目标:启动一个支持远程访问方法调用的服务器。 在创建所有服务之后,应用程序不会失败。 jar位于target / lib目录中。 父pom具有依赖性: org.springframework spring-aop ${version.spring} 注意:我能够创建一个类型为:org.springframework.aop.framework.ProxyFactory的spring bean 堆栈跟踪: 36438 [main] ERROR org.springframework.web.context.ContextLoader – 上下文初始化失败 org.springframework.beans.factory.BeanCreationException:在类路径资源[application-context-service-web-server.xml]中定义名称为’org.springframework.remoting.rmi.RmiServiceExporter#0’的bean时出错:init的调用方法失败; 嵌套exception是java.lang.NoClassDefFoundError:org / springframework / aop / framework / ProxyFactory 在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338) 在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473) 在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory $ 1.run(AbstractAutowireCapableBeanFactory.java:409) at java.security.AccessController.doPrivileged(Native Method) 在org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380) 在org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:264) 在org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222) 在org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261) 在org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185) 在org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164) at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429) 在org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728) 在org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380) 在org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255) 在org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199) 在org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45) 在org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3795) 在org.apache.catalina.core.StandardContext.start(StandardContext.java:4252) 在org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:760) 在org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:740) […]

将binarySearch与Comparator和regex一起使用

我正在尝试编写一个快速搜索来搜索List而不是循环遍历列表并手动检查,我想使用binarySearch执行此操作,但我不知道如何执行此操作。 旧方式: for(String s : list) { if(s.startsWith(“contact.”) return true; } 相反,我想要这样的事情: Collections.sort(list); Collections.binarySearch(list, FindContactComparator()); 有人可以帮我写这个比较器吗? 有没有更好的方法来做这个而不是使用binarySearch?

在java webapp / client中管理Web服务/ xml绑定的生成工件的最佳方法?

我正在研究一些使用JAXB绑定消息的Web服务(在JAX-WS或spring-ws中)。 使用这些绑定时,总会有一些代码从WSDL自动生成以绑定消息对象。 我正在努力找出能够完成这项工作的最佳方法,以便它易于使用,难以破解并与IDE很好地集成(主要使用eclipse)。 我认为有几种方法可以解决这个问题。 我现在看到的三个主要选项是: 生成代码,保留源工件并将其检入存储库。 优点:与IDE轻松集成(源代码突出显示等),在构建系统中工作。 缺点:每次重新生成时生成的代码都会更改,可能会创建嘈杂的提交。 它也是多余的,因为WSDL文件通常已经签入。 生成代码作为构建过程的一部分。 不要保留源工件或仅将它们保存在输出目录中。 优点:修复前一个缺点。 缺点:难以与IDE集成,但是这个构建步骤是否可以自动运行? 我目前在我的一个项目上使用它,但是第一次检查项目时它看起来很破碎,这是一个小麻烦。 将生成的绑定保存在maven或手动更新的jar中包含的单独库(jar)中,具体取决于您的构建过程。 我从java.net上的一个post中得到了这个想法。 这似乎更稳定,并使用显式版本,但似乎有点重量级。 您将实施哪些选项以及如何实施? 我们目前正在使用maven和eclipse,所以在这方面的任何想法都会很棒。 我认为这个问题可以概括为大多数其他构建系统和IDE组合,甚至可能是其他语言。

Java中构造函数中的长参数列表

可能重复: 重构具有太多(6+)参数的方法的最佳方法是什么? 如果构造函数有一个很长的参数列表,我们应该考虑它的坏样式并重构它吗? 如果有,怎么样?

Java:在shuffle中排除数组索引

是否可以在shuffle中排除数组索引? 我对这个问题的见解: Array[0,1,2,3,4,5,6,7,8] Exclude Array index 2 and 7 in shuffle. Shuffle Array. Array[3,5,2,1,6,8,0,7,4] 这是我在洗牌中使用的内容: Listlist = Arrays.asList(pkm); Collections.shuffle(list); 编辑: 谢谢,@ Jhanvi! 我研究了你的代码,它给了我一些想法。 我试着玩你和@Rohit Jain的代码并创建了一个样本: import java.util.Arrays; import java.util.Collections; import java.util.List; import java.util.ArrayList; public class Example { public static void main(String[]args){ String[] x = {“a”,”b”,”c”,”d”,”e”,”f”,”g”,”h”}; List list = new ArrayList(Arrays.asList(x)); System.out.println(“Before shuffling, ArrayList contains : […]

动态更改RESTEasy服务返回类型

我可以在RESTEasy服务中更改@Produces注释参数的值吗? 我给出的任务是将多种格式报告集成到现有的报告系统中。 因此动态更改@Produces注释参数会对我有所帮助。 提前致谢!

JScrollPane不适用于我的JPanel

首先,我必须说我已经检查了这些问题,但没有找到我的答案: 1,2,3,4,5,6,7 还有很多其他问题 我也检查了这些教程和示例: 1,9,10,11 和许多其他网站。 但我无法解决我的问题。 这是我的代码的简单类型: public class Question extends JFrame { public Question() { Dimension d = Toolkit.getDefaultToolkit().getScreenSize(); setLayout(new BorderLayout()); setSize(d.width, d.height); setResizable(false); setDefaultCloseOperation(EXIT_ON_CLOSE); JPanel panel = new JPanel(); panel.setPreferredSize(new Dimension(d.width, d.height)); panel.setBorder(BorderFactory.createLineBorder(Color.red)); panel.setLayout(new BoxLayout(panel, 1)); for (int i = 0; i < 100; i++) { panel.add(new JButton("kjdh")); } JScrollPane scrollPane = […]

javac:invalid flag:activation-1.1.jar

我正在使用Tomcat7,jdk 1.7.0_55和eclipse,当我尝试使用COMMAND PROMPT编译整个项目(Java代码)时,它显示错误像javac:invalid flag:D:\ COMPILE \ lib \ activation-1.1.jar 。 遵循以下给出的步骤来编译代码。 Step.1: dir *.java /s /b > FilesList.txt Step.2: javac @FilesList.txt -d compiledCode -cp D:\COMPILE\lib\*.jar 运行Step.2命令后,它显示Error.so我从我的lib文件夹中删除了错误jar文件并运行命令,但它显示与另一个jar相同的错误。 注意:我已经有ANT build.xml但我想通过COMMAND PROMPT编译项目。