Questions tagged «java»

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


1
多次调度与函数重载
我试图了解两者之间的区别(如果有)。 根据Wikipedia页面上的Multiple Dispatch,它是Function Overloading的同义词,但随后继续说: 用只有一次调度的语言,例如Java […] 这似乎是一个矛盾,因为Java确实支持函数重载。 那是什么呢?Multiple Dispatch与Function Overloading是否不同,或者该文章是否声称Java不支持Multible Dispatch是错误的?

3
Perl和Java之间有何相似之处?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 我下定决心要学习Java作为第二语言(我是Perl开发人员)。但是仅仅阅读一些在线教程,我真的找不到两者之间的任何相似之处。学习Java时,我会很轻松地了解什么?
14 java  perl 

5
Ant是否仍在Java构建的“主流”中?
我们一直在慢慢地用更全面的Ant构建(例如从CVS中获取,清理编译,jar,存档,电子邮件等)替换批处理命令文件(windows .bat),这些命令文件只是破坏了在开发人员IDE中编译的类。 我已经花了很多时间在Ant上学习(和调试问题),所以我最习惯将其用于这些任务。但是我不知道蚂蚁是否仍然像我刚开始学习时那样被广泛使用,还是“世界已经发展到”一种新的东西(也许更光滑了)。(例如,我开始看到分发了更多的Maven构建资料,例如,我从未使用过。) 这个问题的实际含义是,我是否要促使新开发人员学习Ant,还是应该为构建进行其他学习? 我从不总是掌握趋势,因此,很高兴听到其他Java开发人员的意见,他们认为这是最好的构建工具,以及他们认为新开发人员应该学习的知识。
14 java  training  maven  builds  ant 

3
Java的包命名约定有什么意义?
我不明白为什么Java使用(可能是假想的)域名的相反名称作为程序包的名称,而大多数人使用的域名与其所拥有的产品之间却没有任何联系。许多开发人员甚至没有任何领域。 此命名约定的原因是什么(如果有)?
14 java  packages 

5
为什么'final'关键字在业界很少使用?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 自从final几年前我发现Java关键字的强大功能以来,它帮助我提高了代码的可读性,因为人们可以轻松地看到什么是只读变量。它也可能对JIT有所帮助,尽管这是非常有限的,但不会造成伤害,尤其是在针对嵌入式设备(例如android平台)时。 但是最重​​要的是,它有助于使设计对更改更健壮,并在其他提交者需要修改代码库时为其提供指导。 但是,在浏览某些JDK源代码时,我从未偶然发现过该关键字,无论是用于类,方法还是变量。这同样适用于我必须审查的各种系统。 有什么原因吗?让一切都从内部变通是常见的设计范式吗?
14 java  final 

2
Java IO类中是否存在Decorator Pattern?
对于一项作业,我必须找出四个类的设计模式中的哪个类java.io.Reader及其子类java.io.PushbackReader,java.io.BufferedReader并使用java.io.FilterReader它们进行构建。 根据这篇文章,设计模式将是装饰器模式。这仅对我有意义PushbackReader,BufferedReader并且FilterReader可以装饰成可以同时使用,从而有效地创建了一个BufferedPushbackFilterReader。是这个主意吗?

6
Flash真的优于Java applet吗?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我还是一个学生,没有太多编程方面的实际经验。我从来没有写过超过〜5k行的代码。我已经用Flash和Java编写了代码,但我不明白为什么人们在Flash中编写诸如视频播放器(YouTube等)之类的Web应用程序,而不是在编写Java applet。因此,我想请具有实际经验的程序员在这个问题上说一些明智的话。 我看不到Flash优于applet的真正好处,但另一方面,至少在我看来,它似乎像地狱般的越野车。我知道在Flash中制作内容的速度更快,并且可以理解为什么这对于快速制作原型将是一件好事,但总的来说,这值得吗?每当YouTube发疯时,我都会诅咒开发人员使用Flash编写它。而且,如果您将Linux与Opera结合使用,则这种情况一直存在。 那么,基本上,为什么人们使用Flash而不使用Applet?

10
帮助我了解自Java 1.4.2以来错过的一切
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我即将开始我的职业生涯,最初是软件开发人员,我很可能会写很多Java代码。我对我将要写的具体内容并不了解,此外,无论如何我对代码都有广泛的兴趣。 由于不值得讨论的原因,我的上一次实习是让我只为Java 1.3和1.4 SDK进行编码。另外,我的大学教育主要集中在算法,数据结构和其他理论上,而不是语言功能或库上。 因此,考虑到以上几点,当前版本的Java(无论现在我们要增加多少?)中的哪些功能,类等,值得我花时间阅读,为什么?自1.4.2起我错过了什么,这使您作为程序员的生活更加轻松? 有关如何发现某个特定软件包或将其投入使用的示例和故事也很棒。

8
在Java中,检查异常有什么用处?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 多年来,Java的受检查异常受到了一些负面报道。一个明显的迹象是,它实际上是世界上唯一拥有它们的语言(甚至不是其他JVM语言,例如Groovy和Scala)。诸如Spring和Hibernate之类的著名Java库也不使用它们。 我个人已经发现了它们的一种用途(在层之间的业务逻辑中),但除此之外,我还是非常反对检查的异常。 还有其他我没有意识到的用途吗?

4
Java对Linux是什么,.NET对Windows是?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 Java是否会以同样的方式成为Linux应用程序开发的事实上的标准?.NET是Windows应用程序开发的标准吗?如果不是,为什么不呢?
14 java  .net  comparison 

2
如马丁的《清洁法》所指,输出自变量是什么?
在Robert C. Martin的“清洁代码:敏捷软件技巧手册”的第45页上,Martin写道,应避免使用输出参数。我在理解“输出参数”的含义以及为什么应避免使用它们时遇到了麻烦。 马丁的输出参数示例appendFooter(s);调用了function public void appendFooter(StringBuffer report)。他对代码的改进是report.appendFooter(); 也许是由于缺少代码上下文所致,但是我看不出如何使用输出参数被认为是较差的编码。有人可以解释这个概念或提供其他示例代码来理解这一点吗? 根据上述原理,以下功能是否也可以视为不洁代码的示例? int[] numberArray = {3, 5, 7, 1}; sortArray(numberArray); 如果以上内容违反了马丁不使用输出参数的原则,那么最好让一个对象具有一个数组作为字段和一个可以调用以对数组进行排序的函数? ObjectWithArrayField numberArray = new ObjectWithArrayField(3, 5, 7, 1); numberArray.sort();
14 java  clean-code 

3
在MVC中,应从Controller或Model调用DAO
我已经看到了很多反对直接从Controller类调用DAO以及从Model类调用DAO的争论。事实上,我个人觉得如果我们遵循MVC模式,则控制器不应与DAO耦合,而应与Model类耦合应该从内部调用DAO,而控制器应该调用模型类。为什么,我们可以将模型类与Web应用程序分离开来,并公开各种功能,例如REST服务使用我们的模型类。 如果我们在控制器中编写DAO调用,REST服务将无法重用功能,对吗?我总结了以下两种方法。 方法1 public class CustomerController extends HttpServlet { proctected void doPost(....) { Customer customer = new Customer("xxxxx","23",1); new CustomerDAO().save(customer); } } 方法#2 public class CustomerController extends HttpServlet { proctected void doPost(....) { Customer customer = new Customer("xxxxx","23",1); customer.save(customer); } } public class Customer { ........... private void save(Customer customer){ …

4
什么时候不使用Spring实例化bean?
我试图了解什么是Spring的正确用法。不是语法,而是目的。如果使用Spring,那么Spring代码是否应该替换所有bean实例化代码?什么时候使用或何时不使用Spring来实例化bean? 可能以下代码示例将帮助您理解我的困境: List<ClassA> caList = new ArrayList<ClassA>(); for (String name : nameList) { ClassA ca = new ClassA(); ca.setName(name); caList.add(ca); } 如果我配置Spring,它将变为: List<ClassA> caList = new ArrayList<ClassA>(); for (String name : nameList) { ClassA ca = (ClassA)SomeContext.getBean(BeanLookupConstants.CLASS_A); ca.setName(name); caList.add(ca); } 我个人认为在这里使用Spring是不必要的开销,因为 该代码更易于阅读/理解。 这并不是真正的依赖注入的好地方,因为我不希望会有的/可变的实现ClassA,我希望以后可以自由使用Spring配置进行替换。 我认为正确吗?如果没有,那我要去哪里错了?
14 java  spring 

9
Java认证对于架构师角色重要吗?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 5年前关闭。 我想知道多少Java认证(SCJP,SCWCD和其他认证)对于架构师职位很重要。如果一个人在Java开发方面拥有良好的经验,并且想要在架构师级别上追求自己的职业,那么你们是否认为他需要获得其CV认证。他是否从未担任过首席开发人员角色? 如果您进行我的建筑师职位面试。我曾在多个团队工作过5年,担任过Java Web开发人员。切勿领导任何人。我的简历上有认证徽章。 开发人员如何使自己的职业道路成为团队中的建筑师?

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.