C ++促进了类定义和类实现之间的分离,但没有JAVA
我有一个功课,我需要根据GRASP评估哪种方法更好。
我发现这个链接回答了我的一部分问题: 为什么在C ++中有头文件和.cpp文件?
但是,我想知道的是,与JAVA相比,c ++的工作方式对于可扩展性和代码重用是否更好,因为所有内容都是在联合文件中定义的?
谢谢您的帮助 !
编辑:为了确保这不是一个争论,我想知道为什么JAVA在C中不喜欢并促进类定义和类实现之间的分离。 这种工作方式或程序方式有什么优势吗?
这个问题已移至https://softwareengineering.stackexchange.com/questions/118574/does-java-promote-a-separation-between-class-definitions-and-implementations-as
java中的等价物是声明类接口 ,它实现了无实现声明的目的。 实现与接口的绑定确实在运行时发生
从可扩展性的角度来看,两者完全相同。 两种语言之间的差异不在于可扩展性function本身,而在于它们的性能方法。 Java和C#的语法更加统一,更简洁,而某些C ++对初学者来说可能是一种痛苦。 C ++通过模板广泛关注编译时类型绑定,而java和C#传统上更侧重于运行时绑定和reflection。 这种差异在过去几年已经有所缓和,尽管对于某些应用领域的利基(主要是高性能计算),像垃圾收集这样的好语言function仍然是Java和C#等高门槛的进入门槛。
- 在Eclipse上使用Android的原生c ++ – 在stdlib上给出错误但有效
- 什么是与C ++静态块等效的C ++习惯用法?
- 将ExceptionDescribe转换为字符串
- 将float数组划分为类似的段(聚类)
- JNI获取exception信息 – 尝试读取或写入受保护的内存
- ECDSA使用BouncyCastle签名并使用Crypto ++进行validation
- Java Native Interface(JNI)是否受C ++ ABI兼容性问题的影响?
- Java中是否有与C#的’AS’关键字类似的关键字
- 如何在JNI中访问从C ++返回java.lang.String的Java方法的返回值?