Java和C++有什么关系,它们有什么区别?

  • 都是面向对象的语言,都支持封装、继承和多态;
  • C++ 支持指针,而 Java 没有指针的概念;
  • C++ 支持多继承,而 Java 不支持多重继承,但允许一个类实现多个接口;
  • Java 是完全面向对象的语言,并且还取消了 C/C++ 中的结构和联合,使编译程序更加简洁;
  • Java 自动进行无用内存回收操作,不再需要程序员进行手动删除,而 C++ 中必须由程序释放内存资源,这就增加了程序员的负担。
  • Java 不支持操作符重载,操作符重载则被认为是 C++ 的突出特征;
  • Java 允许预处理,但不支持预处理器功能,所以为了实现预处理,它提供了引入语句(import),但它与 C++ 预处理器的功能类似;
  • Java 不支持缺省参数函数,而 C++ 支持;
  • C 和 C++ 不支持字符串变量,在 C 和 C++ 程序中使用“Null”终止符代表字符串的结束。在 Java 中字符串是用类对象(String 和 StringBuffer)来实现的;
  • goto 语句是 C 和 C++ 的“遗物”,Java 不提供 goto 语句,虽然 Java 指定 goto 作为关键字,但不支持它的使用,这使程序更简洁易读;
  • Java 不支持 C++ 中的自动强制类型转换,如果需要,必须由程序显式进行强制类型转换。

你可能感兴趣的:(JAVA面向对象,java,c++)