用C++改写不同java版本银行代码,并谈谈自己对每个版本的体会

第一个版本:4_9

  1. java里面没有c++ 里的namespace,而是换成了package。
  2. private,public等在Java里面需要单独写在每一个成员前面。
  3. Java里不允许普通函数(除抽象类,接口等)的声明与函数体分开,要写一起。
  4. c++ 里面void test (int _x) const{}时const指该函数不能修改类的成员,而Java 里面final void
  5. test(){}时final表示该函数不能被重写。Java里没有const。
  6. Java里的输出是语句是System.out.println(变量名 + “字符串”);相当于“<<”改成了“+”。
  7. Java里是不用写什么math.h等头文件的,类库里都有。比如取整:Math.floor() 。
  8. c++ 里面建立类的对象可以直接:类名 对象名(参数),而Java里面需要:类名 对象名 = new 类名(参数)。

第二个版本:5_11

  1. Java里面没有const修饰符,有类似的final,但两者功能有所差异。
  2. Java里的构造函数没有id(id)这种写法,大多是this.id=id。
  3. c++调用类的静态成员函数是 类名::函数名,而Java是 类名.函数名。

第三个版本:6_25

  1. Java里没有像c++一样的&符号引用,创建对象时一律使用new。
  2. Java里是不允许全局变量的,因为这会破坏封装性。
  3. Java里的异常退出exit(1)需要调用System.exit(1)。
  4. Java里的字符串类型是一个类String,还有print不输出换行,println才换行。

第四个版本:7_10

这个版本相较于以前的版本,在语法方面没什么明显改变,本版本加入抽象类,来方便实例化两个有些相似的子类,大体方法是和c++一样的,只是一些关键字不太一样。

第五个版本:8_8

  1. 在改代码过程中对于show函数是否定为虚函数有很大麻烦,因为两种语言格式不一样,最后取消了纯虚函数的设置,不过也加深了对java的理解。
  2. 本版本实现类2个很常见的要求:批量操作和统一接口,因为对象类型不一样,还要求统一实现,就用到虚函数,而函数接口设置为一样,在函数体额外加判断条件,来达到接口统一,更利于程序的封装性,安全性。
  3. java里面的输入输出很有趣,也是调用类库,比如java.text.DecimalFormat可以控制输出小数点,java.io.IOException和java.util.则是输入的专用库,每种类型的输入还不一样,真的很方便啊!
    Date类和Accumulator类和之前一样,CreditAccount只有show函数不太一样

第六个版本:9_16

先说些两种程序的不同点。C++里面有动态数组模板Array,可以动态添加对象,java里面有ArrayList,对于这个一开始真的很烦,要去不停的查询,因为他是类库里的东西。各种方法都有。只是我不会用罢了,所以这次的改编基本都在查资料。不过ArrayList确实很方便使用。
只有主函数和上一版本不一样,其他的类一模一样

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值