2010-03-01 17 views
0

我想知道一些非常有用和特定于Java的功能。因为我是java开发人员,当人们问我一些在java中没有其他语言的编程功能时,那么你认为我可以告诉他们。java和其他人不具备哪些功能?

也就是说,如果我告诉他们这些功能,那么他们应该知道我是一名java开发人员。

+0

啊隐藏功能.... – 2010-03-01 10:15:49

+0

请给它从其他语言 – GuruKulki 2010-03-01 10:23:06

+0

@preet,没有隐藏的功能,它的“的”特征的原因,以及咖啡和编程齐头并进:)只有 – GuruKulki 2010-03-01 10:23:58

回答

1

我想一个是,Java是唯一被认为是平台和框架的语言。

+0

取决于您的平台是什么意思,但...并不是很难。 C#/ CLR,Ruby on Rails,Python及其库。现在任何自尊的语言都会附带一大套图书馆。 – 2010-03-01 10:19:34

+0

根据我在这里得到的答案,平台是我们运行的平台,框架是我们开发的平台。所以java可以做到这两个 – GuruKulki 2010-03-01 10:25:33

9

java的强度是jvm和可用的开源库的吨数。

几年前编程语言确实很好,但现在有更好的语言,其中一些语言也运行在jvm上(scala,groovy)。

+1

对不起,但从我对Groovy的经验,我不会说这是一个'更好'的语言。缩短不一定更好,而'def'是万恶之源。 – 2010-03-01 16:49:06

+0

好的你的观点是对的。 可能“更好”不是最好用的字。 我只是说有些语言比java晚,并且通常更强大和巧妙。 显然你给用户的权力越大,他做出错误决定的可能性就越大。 但我在java中也看到了非常混乱且不可读的代码。 它肯定更长:) 顺便说一下,我真的更喜欢scala的类型推断方法! – naaka 2010-03-02 15:25:05

0

Jave是唯一具有java编译器和java语法的语言。

+0

为此而欢呼。 – 2010-03-01 10:42:47

+0

我不明白。你能详细说明一下吗? – fastcodejava 2010-03-01 11:08:17

+2

http://xkcd.com/703/ – KitsuneYMG 2010-03-01 16:50:33

8

强制性异常规范。哦,等等,你想有用 ...!

对不起,但Java和所有其他语言一样,承载着特质和实验的负担。其中的一些成果(Java确实帮助将接口推向静态类型OO语言的最前沿,以及构建文档生成,即使它不是第一次尝试),而其中一些却没有(参见以上)。

我怀疑你会发现无法找到,复制或模仿其他语言的独特和有用的Java功能。关于Java的独特优点(和坏)是组合的特定功能,现有工具和库以及广泛的开发技能。

+9

有点显而易见:如果语言功能很有用,它不会长久保持独特。 – 2010-03-01 10:35:16

+1

很久以前,Modula-3中就存在强制性的异常规范,Java甚至在Sun的邮递员的眼中闪闪发光。 – 2010-03-01 12:52:24

+0

@ttmrichter:太阳底下没有新东西......出于好奇:你自己使用了Modula-3吗?在学术界之外?对于任何一种大规模的编程?我的印象是,它从来没有得到以下帕斯卡(在各种混杂方言中)的二十分之一。 – 2010-03-02 14:27:33

3

我想你不能命名Java的一个功能,除了一个以外没有其他语言: 在那里的开源/免费框架和库的数量。

对于你遇到的每个问题都有一个库。你想要一个http客户端?以Apache的一个。 强大的Dependeny Injection框架? Spring或Struts或其他任何东西。 需要一个免费的服务器来部署整个事情? Tomcat的。 O/R-Mapping?休眠与注释。或者iBatis。 将整个事情与maven2结合起来,并且您的项目已准备就绪,可以管理所有这些依赖关系。

+0

我很确定C的操作系统框架比Java更多。仅仅因为C已经存在了很长时间了。 – Niki 2010-03-01 10:30:57

+0

@nikie:我真的不这么认为。有许多很棒的C库,但它们并没有真正与Java框架(库和框架有些不同)。 – pmr 2010-03-01 10:35:00

+0

实际上,我找到一个解决刚性常微分方程的Java API时遇到了问题。最后,我因为这个原因和Python一起去了(我很高兴我做到了!)。 – 2010-03-01 16:44:33

0

我认为我对所有事情都或多或少都同意,但是可以告诉他们Java的最佳特性是您知道如何使用它进行开发。

-1
  • 语言是来自多个厂商的
  • (大部分)平台独立
  • 没有内存泄漏的类型安全
  • 伟大的工具支持(集成开发环境,集装箱,构建工具(Ant,Maven的),Maven的:P
  • Java社区进程(JCP)和Java规范请求(JSR)
+1

类型安全性不是Java独有的。工具支持并不是Java独有的。 Java独立于平台独立性。 Java确实会泄漏内存并且垃圾回收并不是Java所特有的。官僚作风并不是Java独有的。原始的海报想要特定于Java的东西,并且您列出了一些与脏东西一样常见的功能。 – 2010-03-01 12:55:08

5

Java's Object Oriented Enums.

(当然你可以在其他语言中模拟它们;但在我所知的Java恰好是这对于他们的语言水平支持的唯一语言。)

+1

+1枚举,正确使用时非常强大。 – helpermethod 2010-03-01 14:00:40

+0

C++ 0x也有这些。 – KitsuneYMG 2010-03-01 16:48:47

+0

C#也有支持语言的面向对象的枚举。 – 2010-03-01 16:53:32

0

匿名内部类(而不是关闭)

1

虽然它在技术上的实现的属性,垃圾收集器的卓越品质和即使你关心性能,内存管理通常“正常工作”这一事实永远不会让我印象深刻。