java复习(1)---java与C++区别
【系列说明】java复习系列适宜有过java学习或C++基础或了解java初步知识的人阅读,目的是为了帮助学习过java但是好久没用已经遗忘了的童鞋快速捡起来、或者教给想快速学习java的童鞋如何应用实践。有意见可以直接留言~
开个博客园脚踏实地一点一点review~
学了好多语言:C、C++、C#、java、python
不同语言的存在都有它存在的意义,所以学习一门语言一定要了解它和其他语言的区别在哪,这里C++源于C,所以C不列出来比较,C#下段时间复习补上,python学的不好先不比较
重点比较下java和C++这两门用的比较多的语言的区别:
1.从发展上来看:
C++源于C语言,改进了C不足的同时保持了C的简洁性和高效性。但两者的区别在于:C面向过程,重点在于算法和数据结构,考虑的是如何通过过程运算得到输出结果;C++则面向对象,首先考虑如何构造一个对象模型来拟合问题。
java源于Oak语言,是完全面向对象语言,它吸收了C++的优点同时又剔除了C++难以理解的多继承、指针等概念。
2.从特性上来看:
(1)java无指针,可靠性高。C++的功能强大,但指针操作失误容易引起系统崩溃,易出bug。相比而言,java无指针操作,更加安全。
(2)java有自动地内存管理。java可在建立实例后自动进行无用内存回收操作,不需要程序员进行删除。而c++中必须由程序释放内存资源, 增加了程序设计者的负担。
(3)java用接口取代多重继承。C++可以多个父类派生一个子类,但十分复杂麻烦。java允许一个类继承多个接口(extends+implement),实现了c++多重继承的功能,又避免了c++中的多重继承实现方式带来的诸多不便。
(4)java不支持操作符重载。
(5)java不支持预处理功能。但import功能与之类似。
(6)java没有goto语句。
总的而言,java把很多C++中繁琐而有可能出错或者引起歧义的功能点进行了删改,保证了语言的尽可能简洁,所以相比而言更喜欢用java一些啦。
最新文章
- Cesium原理篇:7最长的一帧之Entity(上)
- 洛谷P1373 小a和uim之大逃离[背包DP]
- ubuntu server 12.04U盘安装,提示无法挂载安装光盘或光盘读取数据出错
- Ubuntu 12.04 改造指南
- Maven重复类的解决
- eBay Notification介绍
- Jquery中的filter()详细说明和transition的用法
- Java float保留两位小数或多位小数
- poj代码搬家啦啦啦
- 在Windows7防火墙允许指定的端口
- JavaEE XML DOM创建之DOM4J
- 16.按要求编写Java应用程序。 编写一个名为Test的主类,类中只有一个主方法; 在主方法中定义一个大小为50的一维整型数组,数组名为x,数组中存放着{1, 3,5,…,99}输出这个数组中的所有元素,每输出十个换一行;在主方法中定义一 个大小为10*10的二维字符型数组,数组名为y,正反对角线上存的是‘*’,其余 位置存的是‘#’;输出这个数组中的所有元素。
- jquery 跨域请求数据问题
- Objc中触摸处理阻塞时消息派送的问题
- 马昕璐 201771010118《面向对象程序设计(java)》第十八周学习总结
- 用javaweb连接数据库用javabean、severlet实现增删改查
- Python 进程间数据交互
- Oracle11g链接提示未“在本地计算机注册“OraOLEDB.Oracle”解决方法
- Oracle DB 使用子查询来解决查询
- Structs复习 Result第一部分
热门文章
- LeetCode 2. Add Two Numbers 解题报告
- Nginx+IIS+Redis 处理Session共享问题 1
- Digital Tutors - Introduction to Scripting Shaders in Unity 学习笔记
- 购买的wemall 6.0商城系统源码分享
- Jmeter函数引用和函数重定向
- zip error: Invalid command arguments
- Java日期获取需求大全
- iOS多线程——同步异步串行并行
- Alamofire源码解读系列(七)之网络监控(NetworkReachabilityManager)
- RabbitMQ-从基础到实战(5)— 消息的交换(下)