Java与C++&C语言的个人看法----异同点(A)
日期:2018.7.30
星期一
博客期:004
第四期的博客我来说一下自己对Java的看法以及它与C++有什么异同之处!


先说不同之处吧!Java应该说是更面向对象一点,它的Java包里类可以通过用import声明Java包文件,从而引用整个文件里的所有类p;而C++和C语言(之后统称C&C++)要用#include<头文件>或#include"头文件"来引入头文件,C&C++的类也是可以写成.h文件或.cpp(.c)文件,以及一个.h文件和一个.cpp文件的标准版,而一个Java包则是有许多.java的类文件组成,这一点还是区别相当大的。我再说一下Java的类声明,它这个是通过这个class来声明类的,这一点是跟我们C++是一样的不同点呢?C++在用类的时候,你不必要声明这个类是什么属性的,就是保护、私有、公有这三种,因为C++也没有这个必要去说这个类让它有什么样的属性啊,C++里用的就是在继承时使用公有继承、私有继承以及保护继承的继承方式来确定你这父类与子类的关系;而我们Java里边呢?类本身就要有这样的属性!在类的前边加上它的属性,就像这样:public class Test{}.......emmmm.....Java里边的父类与子类的关系就比较复杂了,其实说复杂它也不复杂!就是这么个关系,搞懂了就是用extends声明一下就可以了!它的类的属性同时决定了它的“继承方式”(因为Java里没有这个概念,所以是引号),而且C++你可以在继承上同时继承多个,从而引出单继承、多继承、多重继承、二义性等概念!而Java就不一样了。Java不可以多继承,但可以单继承和多重继承!对于公有、私有、保护这三种属性和“声明符号”,Java与C&C++一样,就不说也罢!然后就到了内部的成员啦!在Java中每个成员都要声明它的属性,而C++里是protected:然后一大堆成员...private:然后一大堆成员...public:....可能是Java程序我还写得很少的缘故吧,在这一点上我还是喜欢C++!当父类和子类有同名的成员函数时,若你写的格式相同,但内容不同,且是没有特殊声明的C++程序!那就等着出bug(报错)吧!我们的Java引入了新的概念---重写(在C++里有一个覆盖功能是内部覆盖外部),而这样可以通过super和this来区分,在C++上处理就麻烦了,要通过未继承的时候的类型来声明一下!如果是静态类型就简单:Father::test();//执行父类函数.......Son::test();//执行子类函数......至于虚函数部分如下图:

它们是一一对应的关系!毕竟你要搞懂C++和Java需要很长的时间!到时候我发一些文件到我的博客上大家就清楚了!再说一下main函数!区别...太大了!C是只能有一个main函数,Java是每一个类里最多只有一个main函数!写起来...我举个例子吧:
//===如下为C语言实现
#include<stdio.h>
int main()
{
printf("Hello World!\n");
return 0;
}
//===如下为C++实现
#include<iostream>
using namespace std;
int main()
{
cout<<"Hello World!"<<endl;
return 0;
}
//===如下为Java实现
public class Test(){
public void static main(String args [ ]){
System.out.println("Hello World!");
}
}
区别挺大的!C++-->Java,bool-->boolean,还多了一个byte!这个是在数比较小时占用内存较小!for循环里多了数组的使用方法!还有枚举...我不介绍了!就先这样吧!
Java与C++&C语言的个人看法----异同点(A)的更多相关文章
- 深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)
作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-language- ...
- java安全沙箱(三)之内置于Java虚拟机(及语言)的安全特性
java是一种类型安全的语言,它有四类称为安全沙箱机制的安全机制来保证语言的安全性,这四类安全沙箱分别是: 类加载体系 .class文件检验器 内置于Java虚拟机(及语言)的安全特性 安全管理器及J ...
- [转]深入理解Java 8 Lambda(语言篇——lambda,方法引用,目标类型和默认方法)
以下内容转自: 作者:Lucida 微博:@peng_gong 豆瓣:@figure9 原文链接:http://zh.lucida.me/blog/java-8-lambdas-insideout-l ...
- Java学习笔记:语言基础
Java学习笔记:语言基础 2014-1-31 最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...
- Java编写的C语言词法分析器
Java编写的C语言词法分析器 这是java编写的C语言词法分析器,我也是参考很多代码,然后核心代码整理起来,放在QQ空间和博客上,目的是互相学习借鉴,希望可以得到高手改进.这个词法分析器实现的功能有 ...
- JAVA入门之基础语言
在上一章文章中,读者已经了解了如何搭建Java 开发环境及Java 程序的开发过程.从本篇文章开始讲解Java 的基本语言.这些基本语言的语法和其他一些编程语言相比有些是类似的,但还有很多不同之处,读 ...
- 【转】Java做服务器开发语言
版权声明:本文为博主原创文章,未经博主允许不得转载. 随着游戏市场的兴起,特别是网页游戏.手机游戏的崛起,对游戏开发技术的需求越来越多.网络游戏开发是一个庞大的体系,总体来说是客户端与服务器端.客户端 ...
- Java语言与C语言混合编程(2)--在Java中调用C语言本地库
在上一篇文章中介绍了Java语言中的native关键字,以及Java语言调用C语言的编译生成本地动态链接库(DLL)实现加法运算的小例子,本文通过一个更加详细的例子,深入讲解Java语言调用C语言的函 ...
- 各种编程语言功能综合简要介绍(C,C++,JAVA,PHP,PYTHON,易语言)
各种编程语言功能综合简要介绍(C,C++,JAVA,PHP,PYTHON,易语言) 总结 a.一个语言或者一个东西能火是和这种语言进入某一子行业的契机有关.也就是说这个语言有没有解决社会急需的问题. ...
随机推荐
- luogu P3767 膜法
传送门 这题如果没有删除操作,可以直接使用可持久化并查集 注意到这种可持久化的依赖关系(是这样说的把)是一棵树,然后对于一个点,自己的操作会影响自己的那棵子树,并且如果是删除操作,就会使得一个子树没有 ...
- redis-deskmanager 连不上 虚拟机 - centos redis
1.没设置redis密码 : https://blog.csdn.net/HUXU981598436/article/details/54668779 2.关闭防火墙
- 网易云课堂《JS原创视频教程-知识点类》
http://caniuse.com/#index //Can I use... Support tables for HTML5, CSS3, etc-支持h5和css3的情况列表 JS包含 ...
- 安装mysql8.0.12以及修改密码和Navicat的连接
mysql8.0+与安装其他版本不同一.安装mysql8.0.121.到官网https://www.mysql.com/ 下载mysql-8.0.12-winx64.zip(不要.mis),直接解压 ...
- JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
https://blog.csdn.net/u012882327/article/details/69525166
- 【Linux】虚拟服务器之LVS
写在前面 觉得甚是幸运,能够有机会参与到ITOO配置环境的工作中去.现在正在熟悉,在搭建环境的时候,有LVS安装配置教程,对这一块有些懵逼,这几天查了一些资料,写在这里,和大家分享一下 是什么 LVS ...
- office 产品密钥
刚买的小新,配置下office,作为技术人员,喜欢Share以下 office 产品密钥,任你选一组 一.序列号激活法(密钥激活法)这种是最为安全而且最为正规的方法,通过取得合法的序列号(密钥)进行激 ...
- 【转】Git超实用总结,再也不怕记忆力不好了
[转]Git超实用总结,再也不怕记忆力不好了 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯工蜂发表于云+社区专栏 Git 是什么? Git 是一个分布式的代码管理容器,本地和 ...
- for..of和for..in和map、filter等循环区别
1.for in遍历的是数组的索引(即键名),而for of遍历的是数组元素值. for in遍历比较适合遍历对象,不太适合数组,有可能遍历出来的不按照顺序 遍历数组 ,,,,,] for (var ...
- BCG界面库
之前用过BCG界面库中的表格控件,深感其强大,现在再来用一下其它的. 一. 关于BCGControlBar. BCGControlBar是一个基于MFC的扩展库,您可以通过完全的用户化操作构成一些 ...