Questions tagged «java»

Java是最初由Sun Microsystems开发的高级,独立于平台的,面向对象的编程语言。Java目前归甲骨文所有,甲骨文于2010年收购了Sun。

1
为什么Java的Iterator和ListIterator指向元素之间?
ListIterator的Javadoc说: A ListIterator没有当前元素;它的光标位置始终位于调用返回previous()的元素和调用返回的元素之间next()。 为什么Java的ListIterator实现指向元素之间而不是当前元素?看来,这使得客户端代码的可读性,当它必须反复调用getNext(),getPrevious(),所以我认为必须有一个很好的理由选择。 作为一个方面说明,我只是写了一个小图书馆称为peekable-ArrayList的扩展ArrayList,Iterator以及ListIterator提供一个peekAtNext()和peekAtPrevious()类似的方法来实现: @Override public synchronized T peekAtNext() { T t = next(); previous(); return t; }
9 java  iterator 

2
JavaFX有未来吗?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 8年前关闭。 我并没有打算对相同的问题进行哈希处理和重新哈希处理,而只是决定要首先学习什么(JavaFX,Flex,HTML5等),我将进行某种调查,尤其是随着最近出现类似问题以来,至少一年。 那么,未来几年JavaFX作为RIA技术的前景如何?
9 java  ria  javafx 

2
使用静态内部构建器类的好处
在编写公司代码准则的过程中,我发现自己建议使用来自Effective Java 的Builder模式,而不是伸缩式构造函数。 但是,经过更多考虑之后,肯定是一个更优雅的解决方案是只删除构建器类,并且还要删除带有可选参数的多余构造函数。 因此,只有一个带有必需参数的构造函数,正常的getter / setter和注释代码。实现时,只需创建yr对象的新实例,然后设置值即可。 我最初的想法是,好处是消除了关于哪些参数是可选的以及需要哪些参数的困惑;但是,真正的好处来自使用方法链接/流利接口。 当您创建许多新实例时,构建器模式会很有用,因为ide可以完成繁琐的工作,并且还有很多(15+)个可选参数。但是,值得花额外的时间编码静态内部类吗,您是否建议使用构建器,还是浪费时间?
9 java 


3
如何创建和发布有用的Java库
我最近研究了一个Java类,该类针对每个对象列表生成排列。无论如何,我想将此库提供给公众,所以我有几个问题: 我看到的大多数库都具有这种复杂的包命名,特别是com/ org。是否有这些约定或permutations包装足够? 是否有发布这些内容的特定格式?是否应为源代码/ javadoc包括单独的WAR? 我将文件放在GitHub存储库中。我想我可以在此处提供文件,但是如何让人们找到我的存储库?

5
测试驱动的开发和提高白盒测试技能
我是刚从学校毕业的入门级Java程序员。我对J2SE有很好的知识和经验。谁能建议我如何提高或调整自己的技能以成为Java白盒测试员?欢迎广泛的输入。 什么是测试驱动开发?
9 java  testing  qa 

4
您的应用程序中可以有很多Abstract类吗?
我们最初想通过在公共接口中使用不同方法的实现来实现策略模式。这些将在运行时根据用户输入获取。 事实证明,我们有实现3-5种通用方法的Abstract类,而只剩下一种方法可以用于不同的实现,即Strategy。 更新:对于许多抽象类,我的意思是有6种不同的高级功能,即6个包,每个都有其接口+ AbstractImpl +(实际Impl系列)。 这是一个不好的设计吗? 在以后的可扩展性方面有任何负面意见-我正准备与老年人进行代码/设计审查。

4
是什么使Java中的“好风格”?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 我曾在Stackoverflow上问过这个问题,在它被嘘之前,我收到了PéterTörök的有用建议,这可能是发布它的更好地方。 我从事Java编程已有几年了。我经常根据什么构成“好风格”与同事讨论设计决策。确实,有很多StackOverflow问题/答案根据某件商品是否为“好风格”来讨论设计。 但是什么才是“好风格”?就像很多东西一样,我一看到它就知道了……但是我想有一个更好的主意,不仅仅是我的良心说这种设计不正确。 您想到什么才能生成良好的,设计良好的代码? (我承认这有点主观,因为什么是“好的风格”将取决于手头的任务)。(此外,我应该补充一点,我对团队样式不感兴趣-例如“我们使用2个空格而不是4个缩进” ...,并且我对Java代码约定不感兴趣。) 编辑:谢谢到目前为止所有好的答案/评论。我特别热衷于寻找答案,这些答案将有助于使那些使程序员的良心(甚至是肠胃疾病)变得难以理解的事情得以整理?

5
Java中的亵渎过滤器性能
我需要在基于Java的Web应用程序中过滤掉用户提交内容中的亵渎行为。客户知道斯肯索普问题和克洛提克问题,并已接受后果。拜托,我不想就缺乏审查制度的优点进行辩论。 有两个数据位: 用户提交的内容,可能包含500个字左右; 单列数据库表,其中包含不允许的单词。该表中可能有成千上万的记录。 目前的解决方案对我来说似乎是错误的: 整个表在启动时装入到Singleton中的静态String []中(因此驻留在内存中)。 对于每个用户提交,我们遍历数组并执行.indexOf()以查看String []中是否有任何给定单词出现在提交中。 如果出现,我们将替换为%$#@%样式的字符。这是通过以下方式完成的:标记用户提交的内容,再次将整个用户提交作为标记循环,并替换找到的单词的每个实例。 此解决方案可能会有出色之处,但我对此表示怀疑。看了一会儿,我找不到路。 问题是,有什么解决方案能够提供良好的性能,并希望在我因未能过滤掉一些我从未听说过的晦涩词汇而被解雇后,对未来的开发人员保持理智的态度?
9 java 

3
什么时候使用RCP?
我喜欢使用Java和Swing编写小型GUI应用程序,类似于社交网站Tumblr的客户端 我应该使用Eclipse RCP还是Netbeans平台? 通过使用普通摆幅/ SWT中的任何一种,我可以获得什么好处? 与使用Swing或SWT开发的应用程序相比,RCP应用程序是否需要更多的依赖项?
9 java  gui 

5
在基于JVM的语言中是否有明确的领导者?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 这些项目的当前状态如何,有一个(或两个)以明确的领导者身份出现吗? 为了证明我提出这个问题的动机,请回想几年。原型和jQuery与MooTools等其他竞争者并肩生存。快速发展到今天,人们普遍认为jQuery是最好的通用JavaScript库。 在过去的几年中,这些基于JVM的语言发生了类似的事情吗?某些语言是否陷入失修和遗弃?从我阅读的内容来看,Scala似乎已经做好了成为备受喜爱的准备,但是话又说回来,我所阅读的几乎所有内容都已经有好几年了。 我做了更多的研究-我的想法是通过使用Google趋势来查看多年来的搜索量。似乎Jython和JRuby的兴趣相对较小,而Groovy的音量在减小,而Scala的音量是恒定的(在最坏的情况下)或在微小的(最好)在增加。这是准确的评估吗? 是的,我指的是JVM上的非Java语言,例如Jython,JRuby,Groovy,Scala,Clojure等。
9 java  scala  jvm  groovy  jruby 

4
您的公司是否正在考虑从Java过渡到另一种技术?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 每个Java开发人员都知道,Oracle收购了Sun,而Java的未来似乎还不清楚,特别是因为Oracle希望通过 JVM 获利。在过去的几年中,Java作为一种语言也已经过时了,不包含闭包就是一个例子(它可能包含在Java 1.8中)。与此同时,正在使用一些新技术,例如Ruby,Scala和Groovy提供复杂的网站。 我想知道是否有公司或组织正在谈论,大刀阔斧或开始使用其他技术,以停止在新领域中使用Java的想法,就像15年前公司从C ++迁移到Perl一样和其他Java技术。我也想知道这种情况的印象,例如:计划在2年内迁移到其他技术。 明确地说,我并不是在问哪种技术更好。我在问您的组织是否正在考虑将Java用于其他技术。
9 java  java-ee 

3
Java Swing应用程序中的窗口管理设计模式
我刚刚开始创建我的第一个小型Java Swing应用程序。程序打开时,将弹出一个简单的窗口,其中包含标签和几个按钮。单击这些按钮之一应该可以擦除欢迎屏幕,并用完全不同的面板替换它。 我不确定创建该功能的最佳方法是什么。一种方法是将我JFrame作为参数传递给...几乎所有其他组件,但这对我来说很棘手。或者,使每个面板都兼作动作侦听器,但这似乎也不对。 我应该在这里应用一种设计模式吗?“替换主窗口(仅主窗口)的内容”必须是一个合理的常见操作。为模式命名就足够了;我可以从那里独自使用Google。(不过,我不会拒绝更长的解释。)

4
Java抽象类命名
例: 您为Ajax操作创建一个抽象类。不同的Ajax操作都将扩展此类。 问题: 您将类命名为AjaxAction还是AbstractAjaxAction吗? 创建子类时,是否给它们命名: 行动 AjaxAction 只要给他们起名字就好 我一直找不到“正式”约定。我看不到子类中需要 “抽象”前缀或任何必需的命名约定。(可能仍然适合,具体取决于。) 有正式的公约吗?你能把我链接到它吗?您对此主题有何看法?
9 java  naming 


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.