Java 与C++ 语言的一些区别-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

Java 与C++ 语言的一些区别

前言

之前用C、C++ 的多目前开始学习和接触 Java 拿Java和C++ 做一个对比帮助快速掌握Java的开发。

不同之外

  • 数据类型的差别

java中 byte 类型类似于c/c++ 中的char类型
boolean 与C++ 的bool 意思一样但名称写法上有差别
java 中char 字符型 表示任意 字符 ‘a’ - ‘z’ 等

  • 条件表达式中只能使用 boolean 类型不可使用整数这与C++ 中与非值不同
  • java 中的变量必须进行显式初始化否则编译器会报错; c++ 中编译器不会强制初始化不初始化也不会报错且初始化值也分很多种情况有些默认初始化为0有些是是一个随机数。
  • java 中常量用关键字final 表示c++ 用const
  • java 增添了三个右移位运算符“ >>>”具有与“逻辑”右移位运算符类似的功用可在最末尾插入零
    值。“ >>”则会在移位的同时插入符号位即“算术”移位。
  • java 中不能重载 符号运算符所以没有类似c++ 中窗口 [] 括号之类的使用方法。
  • java 中不必进行提前声明。若想在定义前使用一个类或方法只需直接使用它即可—— 编译器会保证使用恰当的定义。
  • 相比于this,多了一个super 同时.class 是用于获取类的 Class 对象的特定语法。
  • java 中每个方法除了函数前加final 的都是可以动态绑定的类似c++ 中virtual 虚函数。
  • java 中多了一个初始化代码块的概念代码块先于构造函数支行。
  • java 中的object 基类与c++ 中的void * 指针。
  • interface 接口与抽象类: 接口的继承使用implements 可以继承多个接口 普通类和抽象类继承使用externs 不能extern 多个类

接口用于定义一组方法表示一种规范或契约强调类之间的行为what。
抽象类用于为其他类提供一个通用的模板或基类强调类之间的继承关系和共享代码how

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Javac++