Java与C语言的区别:

C语言和JAVA其实是很相识的,最直接的区别就在与,一个是全面向过程,一个是面向对象。而且JAVA是可以跨平台的。而C语言不能,但能够直接操作硬件,并且生成机器码的效率高。C语言多了一个,指针也是C语言的精髓,想要学好C语言,指针就必须学好。JAVA是没有指针的。

在语法中:JAVA是从可以算是从C++发展而来的,因此Java与C语言的语法比较类似的。

在内存的管理中:

C语言在使用完一块内存时,要手动把内存释放掉,如果不释放的话,运行久了,程序很容易就会崩溃掉的。由于需要显式的归还内存,因此当一个函数需要将一块内存返回给调用者的时候,问题就比较复杂了。所以我们所以时要注意:(1) 在调用者中先分配好内存,作为参数传入到被调用的函数中(2) 在被调用的函数中分配,使用完后在调用者中释放(3) 在被调用函数中使用static变量,可以将该变量返回。

而JAVA基本不用考虑内存的问题,如果想用一个对象,new一个就可以,这个过程的背后则是JRE为对象分类的一定内存,当JRE发现你不再使用这个对象的时候,他就会自动回收内存,也就是说你只管借东西,不用管归还,因为与有人当你的跟班,在你不使用的时候就把东西归还了,不过这个过程还是有的,只不过是JRE作的而已。

语法中使用的基本类型:

C语言有着很多的基本类型如:(boolean, char, byte, short, int, long, float, double,struct, union, enum)还有数组,指针等等。

在JAVA中:只有(boolean, char, byte, short, int, long, float, double)这8种基本类型和引用的。

在继承中:两种语言都支持方法重载的,C语言是多线继承,JAVA是单继承的。动态、静态绑定:

在C语言中,为了允许运行时动态决定哪个函数被调用,一个函数必须用virtual修饰。virtual关键字被自动继承,用以支持多态;凡是没有用virtual修饰的成员函数(包括static)都是静态绑定的,即在编译时决定调用哪个版本。而在Java中,除了static、final、private是静态绑定以外,所有方法一律按动态绑定处理。

初始值:在C语言中,是可以不初始化使用的,而在JAVA中,是必须初始化值的。

抽象方法或抽象类:C语言的对等语法是“纯虚函数”和“抽象类”,Java使用abstract关键字修饰抽象方法或抽象类,final类不能被继承

都使用抽象类作为继承层次中的基类,提供一般概念,由子类实现其抽象方法,且抽象类都不能被直接实例化为对象。

super:JAVA super关键字,指代父类对象,通常被用于调用父类的构造方法或一般方法,C语言没有super关键字。

this:两者都有,都是只当前的对象

package:C语言没有,Java有package的概念,可以将类组织起来,便于打包和部署,也有利于类的安全。

在语法中还有很多的差异,就不一一列出来了,可以看出,JAVA比C语言要精简很多,在生活上的实用性也很强,C语言却是哎操作内存上比较强。也就是说JAVA比较适合在上层工作,只要我们懂得接口就好,而C语言却是在网络下层工作的,要对协议比较了解。总之,各有各的好处,各有各的领域。

java 好处_Java的优点相关推荐

  1. 工厂模式 java好处_java中工厂模式的优缺点有哪些

    java中工厂模式的优缺点有哪些 发布时间:2020-12-03 15:15:07 来源:亿速云 阅读:79 作者:Leah 这篇文章将为大家详细讲解有关java中工厂模式的优缺点有哪些,文章内容质量 ...

  2. 开课吧:Java软件开发的优点有哪些?​

    众所周知Java语言因为其简单且安全性高等优点,越来越受到青睐,那么在使用Java开发语言进行软件开发的时候,具体有哪些优点呢? Java开发工程师需要了解的基础知识 Java软件开发的优点包括以下这 ...

  3. 【源码+教程】Java课设项目_12款最热最新Java游戏项目_Java游戏开发_Java小游戏_飞翔的小鸟_王者荣耀_超级玛丽_推箱子_黄金矿工_贪吃蛇

    马上就要期末了,同学们课设做的如何了呢?本篇为大家带来了12款热门Java小游戏项目的源码和教程,助力大家顺利迎接暑假![源码+教程]Java课设项目_12款最热最新Java游戏项目_Java游戏开发 ...

  4. java编程有哪些优点呢

    Java语言是面向对象的程序设计语言,它吸收了Smalltalk语言和C++语言的优点,并增加了其他特性,如支持并发程序设计.网络通信.和多媒体数据控制等.java编程有哪些优点呢 1.Java语言是 ...

  5. 黑马程序员全套Java教程_Java基础教程_异常(含扩展)(二十三)

    黑马程序员全套Java教程_Java基础教程_异常(含扩展)(二十三) 1.1 异常概述与异常体系结构 1.2 JVM遇到异常时的默认处理方案 1.3 异常处理 1.4 异常处理之try--catch ...

  6. java 父委托机制优点_Java虚拟机父类委托机制设计的优点

    Java虚拟机父类委托机制设计的优点 昨天朋友的聊天中,讨论起了Java虚拟机的机制,父类委托机制,根加载器.扩展类加载器.应用类加载器.....说了很多,但是朋友(辉哥)的一句话,为什么这样设计呢? ...

  7. java泛型机制的好处_java 泛型机制

    Java 泛型 泛型这种语法机制,只在程序编译阶段起作用,只是给编译器参考的(运行阶段泛型没用) 使用泛型的好处是什么? 1.集合中存储的元素类型统一了 2.从集合中取出的元素类型是泛型指定的类型,不 ...

  8. java线程池应用的好处_java高级应用:线程池全面解析

    什么是线程池? 很简单,简单看名字就知道是装有线程的池子,我们可以把要执行的多线程交给线程池来处理,和连接池的概念一样,通过维护一定数量的线程池来达到多个线程的复用. 线程池的好处 我们知道不用线程池 ...

  9. java dao 泛型的好处_java中泛型有什么作用

    泛型的作用如下: 1.类型安全 泛型的主要目标是提高 Java 程序的类型安全.编译时的强类型检查:通过知道使用泛型定义的变量的类型限制,编译器可以在一个高得多的程度上验证类型假设.没有泛型,这些假设 ...

最新文章

  1. solr查询特殊字符的处理
  2. c++ 门面模式(Facade)
  3. Elasticsearch 5.6.5 安装head插件
  4. redis-哈希数据类型
  5. neo4j python_Python 操作 Neo4j 数据库!
  6. Eigen删除矩阵的某行或某列
  7. hdu 6058 Kanade's sum
  8. WebSocket 测试
  9. 梓论坛 zibbs 1.0 发布,PHP 轻论坛系统
  10. Day002 20210207
  11. HPE Comware Lab - Simulator
  12. Node.js连接数据库
  13. 欧姆字符的编码c语言,欧姆符号怎么打
  14. esp32-qcloud腾通连连编译指南
  15. wap端使用a标签跳转不刷新问题
  16. 清除阿里云服务器挖矿程序过程
  17. EndNote: layout can not be formatted because it is no longer open
  18. 2017283418魏扬
  19. 4路 HX5+Emulex 8Gb 实现 BOFM 实施 -chenjhh@dc
  20. 优惠券使用条件全解析

热门文章

  1. 深度学习核心技术精讲100篇(十)-机器学习模型融合之Kaggle如何通过Stacking提升模型性能
  2. tensorflow从入门到精通100讲(六)-在TensorFlow Serving/Docker中做keras 模型部署
  3. Leetcode每日必刷题库第1题,如何实现两数之和?
  4. 9 个可以快速掌握的 Java 性能调优技巧
  5. MATLAB中的varargin,varargout在函数中运用
  6. android 9patch 漏洞,Android 9patch 图片解析堆溢出漏洞分析(CVE-2015-1532)
  7. C++工程中初步使用QML
  8. 云端TensorFlow读取数据IO的高效方式
  9. Linux原始套接字实现分析---转
  10. 【机器视觉】计算机视觉如何入门