C ++促进了类定义和类实现之间的分离,而不是JAVA

时间:2011-11-08 16:50:13

标签: java c++ grasp

我有一个功课,我需要根据GRASP评估哪种方法更好。

我发现此链接可以回答我的部分提问:Why have header files and .cpp files in C++?

但是,我想知道的是,与JAVA相比,c ++的工作方式对于可扩展性和代码重用是否更好,因为所有内容都是在联合文件中定义的?

感谢您的帮助!

编辑:为了确保这不是一个争论,我想知道JAVA为什么不在C中做,并促进类定义和类实现之间的分离。这种工作或程序方式有什么优势吗?

此问题已移至https://softwareengineering.stackexchange.com/questions/118574/does-java-promote-a-separation-between-class-definitions-and-implementations-as

1 个答案:

答案 0 :(得分:2)

java中的等价物是您声明类接口,它实现了无实现声明的目的。实现与接口的绑定确实在运行时发生

从可扩展性的角度来看,两者完全相同。两种语言之间的差异不在于可扩展性功能本身,而在于它们的性能方法。 Java和C#的语法更加统一,更简洁,而某些C ++对初学者来说可能很难读。 C ++通过模板广泛关注编译时类型绑定,而java和C#传统上更侧重于运行时绑定和反射。这种差异在过去几年已经有所缓和,尽管对于某些应用领域的利基(主要是高性能计算),像垃圾收集这样的好语言功能仍然是Java和C#等的高门槛。