您的位置:首页 > 编程语言 > C语言/C++

Java初探:浅谈Java语言和C语言的区别

2010-09-20 10:27 381 查看
通过这一周对《Java语言导学》的学习,我对Java语言有了基本的了解。

下面我将对Java语言和C语言进行比较,以此为切入点,谈谈我对Java语言的理解。

一.编程思想不同

这是Java和C的一个根本区别。

C语言是一种过程式语言,较为简单直观,它是Java,C++等高级语言的基础。

而Java是一种面向对象的语言。何谓“面向对象”?以我的理解,“面向对象”中包涵的思想是对实际物体的抽象与重塑。以自行车为例,每辆自行车都是一个对象,但我们可以忽略每辆自行车一些无关紧要的区别,抓住它们的共同之处,将所有的自行车抽象为一个类——自行车类。在Java中,所有类都是Object的直接或间接后代。类不是对象,而是对象的蓝图。当我们需要制造一辆具体的自行车时,就可以以类为模板,将颜色,齿轮转速等属性具体化,构造出一个自行车对象。面向对象的思想使得程序的模块化特点更加突出。一个类又可以从它的超类中继承一些特点(指“变量”和“方法”),并添加一些新特点,成为一个新的类。Java中的“对象、类、继承”等概念是C语言中没有的。

二.Java语言的安全性更好

Java语言很看重程序的安全性,对访问级别指定得十分具体,包括private,protected,public,package几个级别。限制变量的访问级别可以减少成员变量的误用,如果一个成员变量只能通过调用方法被修改,而不允许公共访问,那么程序员就可以得知其他类和对象对此变量是否进行了修改。而且Java没有C语言中的全局变量,所有的变量都只能定义在类中。

另外,java不允许程序员直接进行指针操作。虽然java中也有数组,对象的引用等概念,但程序员无法直接找到指针并通过它对对象进行访问。指针可以说是C语言中最灵活的一个数据类型,也是最容易出错的。我在做指针这一章的上机实验时,就经常出现一些调试好多遍都解决不了的问题,比如指针瞎指导致了系统的崩溃。java就避免了这些问题的产生。

三.java中的函数多种多样

C语言中也有系统定义的一些函数,只要在程序的开头包含相应的头文件就能使用。但是我觉得C中的函数十分有限,而且易于记忆。

与此相比,Java语言中的函数显得更加形式复杂,功能多样。这也是让我觉得很头疼的一点。java中的函数都是以几个单词拼起来作为名字,长长的一串,总觉得看过一遍两遍后还是记不住。而且jdk中的函数又那么多,每个都用于实现不同的功能。所以我觉得自己虽然掌握了java最基本的编程思想和语法,但还是很难写出一个我可以用C语言写出来的同等难度的函数。看来我还需要长期的记忆和实践,才能用好那些函数,得心应手地用Java编写程序。

四.java可以通过多线程来同时执行多个任务

线程是程序内一个单一的顺序控制流程。C语言在某个时刻只能执行一个任务,而Java可以通过多线程来同时执行多项任务。可以看出,Java在设计应用程序方面更有优势。用户常常需要程序能同时执行多个任务,如观看浏览器时,可以一边滚动页面,一边播放动画和声音。

在使用多线程时要合理利用有限的系统资源,把握好不同线程的优先级,防止饿死和死锁。

这一周看的东西比较多,范围也很广,所以写出来的都是泛泛而谈的东西,不够深入具体。各位多多包涵,我会继续努力的。

PS:前几天下载了一个Eclipse以及jdk1.6。写了两个比较简单的小程序,感觉现在使用起来还比较生疏。网上推荐得比较多的IDE有Eclipse,Netbeans,Jbuilder,不知道哪个好,还请学长给我推荐一下哪个比较适合我这样的初学者~~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: