您现在的位置是:首页 >

举例说明语言和言语的区别 JAVA语言和C/C++语言有什么异同?

火烧 2022-10-05 08:08:40 1037
JAVA语言和C/C++语言有什么异同? JAVA语言和C/C++语言有什么异同?C是中级语言 JAVA C++ 是高阶语言JAVA用的人最多,可以做手机软体Wi dow 软体C++不 能做手机软体C

JAVA语言和C/C++语言有什么异同?  

JAVA语言和C/C++语言有什么异同?

C是中级语言 JAVA C++ 是高阶语言
JAVA用的人最多,可以做手机软体Windows软体
C++不 能做手机软体
C什么都能做,但是效率低。C是他们的爸爸

JAVA语言和C/C++语言有什么区别吗?

楼主,如果你是初学者,建议你可以从C语言开始学,C语法简洁,功能强大,支援结构化程式设计,比较适合初学者学习。
有了C语言的基础,你就可以选一种面向物件(OOP)的语言来学了,其实C#,C++,java语言在基本语法上和C语言基本差不多,就是增加了面向物件的许多东西,因而功能更加强大,面向物件程式设计是现在程式设计方法的主流,是必学的。
至于学习哪一个语言,这个主要看你的个人兴趣吧。
如果你以后有志于做跨平台的软体开发,建议你可以学java语言,而且也比C、C++简单的多了。
你想学java语言可以找一下我的新浪微博:weibo./aldmarket,可以线上私信给我哦,能解答的问题我尽可能帮你解答哈!

java语言和C语言有什么不同呀?

Java是纯面向物件,C是结构化语言。
JAVA与平台无关,C有关。
一、首先,给你个形象的例子让你明白:
如果说JAVA好比是奔4,C语言就是386电脑了。
两者都是编译语言,但是后者是计算机发展中的一个基础语言,而JAVA则是新兴的功能更加强大的编写语言。
二、其次,再给你详细一些的说明两者的区别:
1. Java没有预处理指令。(如C中的#define , #include , #ifdef等)。C中的常量定义在Java中用static final来取代。
2. Java中没有C中的全域性变数。
3. Java中的主型别的size是确定的,而C中主型别的size跟平台相关。
4. Java中没有了指标,它使用了类似的控制代码来取代指标,但是Java中不允许对控制代码进行加减,没有取地址操作符之类的东东。
5. Java有垃圾收集机制,不需要自己释放空间。
6. Java没有goto语句。Java在C提供的控制语句基础上增加了异常处理和标签break和continue语句。这些可以替代goto的作用。
7. C要求一个方法或块中使用的所有区域性变数的定义在该方法或块的最开始处定义,而Java允许这些定义在方法或块的任意地方出现。
8. Java不要求在呼叫一个函式以前已经定义了该函式,可以在呼叫点后面定义。而C有这个要求。
9. Java不支援C中的strut 和 union型别。Java支援方法过载。
10. Java不支援C中的enum关键字。
11. Java不支援C中的bitfields能力。
12. Java不支援C的typedef。
13. Java不支援C的方法指标。
14. Java不支援C的可变引数表。

浅析C语言和Java语言的异同

【摘 要】 文章根据本人多年对C语言和Java语言教学过程中遇到的一些实际问题,诸如Java语言是不是C语言发展和衍生的产物等。基于此,文章将从它们的起源、特点、开发环境、程式除错过程、应用领域等方面的异同进行比较、归纳。
中国论文网 :xzbu./8/view-4409732.htm
【关键词】 C语言 Java语言 异同 比较 归纳
1 举例
(1)C程式。
#include “stdio.h”
void main()
{printf(“大家好!\n”);
}
(2)Java程式。
public class java1
{
public static void main(String args[])
{ System.out.println(“大家好!”);}
}
从以上程式程式码上看,二者既有相似之处,又有不同。相似的是二者完成的都是向输出终端输出字串“大家好!”,不同的是前者是用C语言的main函式来实现的,C语言中main函式是程式执行的入口;后者用Java语言的类方法main的定义实现的, Java程式中main方法是程式执行的入口。
2 起源
C语言是在70年代初由两位程式设计师B.W.Kernighan和D.M.Ritchit在美国贝尔实验室研究出来的。后来由美国国家标准学会制定了一个C语言标准,于1983年发表。通常称之为ANSI C,是当代最优秀的程式设计语言。
Java语言是在1995年5月由Sun Microsystems公司推出的面向物件的程式设计语言。
3 特点
3.1 C语言的特点
C语言具有简洁、紧凑,方便、灵活;运算子丰富;资料型别丰富;具有结构化的流程控制语句(if、switch、for、while语句等);语法限制不是很严格,程式设计自由度大;允许直接访问实体地址,能进行位操作,能够实现组合语言的一些功能,可以直接对计算机硬体进行操作。因此有人又把它称作中级语言。生成目的码的质量高,程式执行效率也非常高;程式可移植性非常好[1]。
3.2 Java语言的特点
Java语言的特点可以概括为:平台无关性、简单、面向物件、分散式、解释执行、健壮、安全性等[2]。
平台无关性是指Java语言能运行于不同的计算机平台,资料型别也与机器无关。安全性是指Java程式执行时,记忆体由作业系统分配,可以避免病毒侵入。另外,Java还对程式提供了安全管理器,防止非法访问;面向物件是指Java将资料和类封装在一起,利用类的特点,实现程式的简洁性和可维护性。通过类的继承性和封装性的特性,使程式程式码只需编译一次,然后就可以反复利用。分散式是指Java建立在TCP/IP网路平台上。库函式提供了使用FTP和HTTP协议传送和接受资讯的方法。健壮性是指Java主要致力于检查程式在编译和执行时的错误。由于Java本身操纵记忆体,这样会大大减少记忆体出错的可能性。
4 开发环境
C是面向过程的语言,执行环境主要有:TC、VC、Visual C++等,现主要使用Visual C++,它是一个功能非常强大的整合开发环境。
Java是面向物件的语言,JDK是许多初学者使用的开发环境,由一个标准的类库和一组测试及建立文件的Java应用程式组成。在Java语言学习的初期,可以在普通的文字编辑器编写Java源程式,利用Javac命令完成编译,利用Java命令完成程式的解释执行。在具备一定的的程式开发基础后,可以选择一些整合开发环境如Eclipse、NetBeans等,以便提高开发效率。
5 程式除错过程
(1)C语言程式除错以Visual C++6.0为例:下载Visual C++6.0并安装、执行,
进入后,点选档案(File)->开启(Open),选择你要开启的C语言档案,点选开启选择开启档案后,依次点选Build->Compile,编译档案无误后,按Ctrl+F5执行程式。
(2)Java语言程式除错介绍两种方法:
dos命令列执行步骤:
1)下载并安装JDK、环境变数设定:PATH、CLASSPATH和 JAVA-HOME。
2)编写:在记事本中编写Java程式码,存为.java档案,档名为程式码入口类的名称。
3)编译:执行CMD进入dos系统。
输入javac程式码档名.java生成.class档案。
4)执行java程式:java*(*为主档名)。
Eclipse执行步骤:
1)下载并安装JDK->下载并安装Eclipse 并执行,进入后点击档案(File)->新建(New)->Java专案(Java project)->输入专案名称->确定。
2)右键单击包资源管理器右键单击1)中的专案下的src节点,依次选择
新建(New)->类(class)->输入类名称->确定。
3)编写Java程式并储存。
4)执行Java程式:右键单击建立好的类档案,依次选择“run as” ->“Java Application(Java 应用程式)”—>确定。
6 应用领域
C语言是即具有高阶语言的特点,又具有组合语言的特点。它已先后被移植到大、中、小及微型机上。它可以作为系统设计语言,也可以作为应用程式设计语言,编写不依赖计算机硬体的应用程式。它的应用范围广泛,具备很强的资料处理能力,不仅仅是在软体开发上,而且各类科研都需要用到C语言,适于编写图形、动画和系统软体。
Java语言的应用领域:(1)行业和企业的资讯化:如现在正在以惊人的速度发展起来的Android,它就是基于Java语言实现的手机作业系统。通过J2ME让手机可以执行Java程式,Java在手机世界的兴起对手机时代起著划时代的作用。(2)嵌入式装置及消费类电子产品:通过将Java虚拟机器嵌入到其他装置中,就可以让Java在这些装置中发挥强大的作用。比如,非智慧手机、机顶盒、嵌入式晶片及其他低功耗装置中都有Java的影子。(3)办公自动化:目前基于Java技术设计的办公自动化系统应用也非常广泛,如:军队办公自动化系统、网上书店系统、银行网上代缴费管理系统等。(4)辅助教学:远端教学系统、远端教育、互动式电站模拟系统等。
7 结语
在多年的C语言和Java语言课程的教学过程中,通过不断探索、学习和阅读文献,我对两种程式语言从以上几方面进行归纳,并将上述内容运用到教学中,采取比较式教学法,取得了较好的教学效果。
参考文献:
[1]姜雷,施泽全.C/C++程式设计教程.中国铁道出版社,2007,2-3.
[2]刘志成.Java程式设计例项教程.人民邮电出版社,2010,4-5.
转载请注明来源。原文地址::xzbu./8/view-4409732.htm

学习了Java和c语言(虽然不精通),今天就来谈一谈两者的优缺点和不同。
首先Java和C都是指令式语言,不同的是Java有面向物件成分在里面,而C是完全面向过程的。Java具有强大的跨平台性,既不同的作业系统都可以通过JVM来解释Java程式,只要你的计算机有Java虚拟机器即可执行。而C语言则是与平台相关的,有些指令只在某些作业系统中才能执行。具体原因是,Java是解释型语言,所有程式码都会翻译成统一的、与系统无关的bytecode,然后放到JVM上执行;而C是编译式语言,程式码要先通过编译器转换成与系统相关的中间程式码,然后才能执行。正因为这样,所以Java不支援系统呼叫,既无法与作业系统进行互动,这是由它跨平台的特点决定的,而C则可以呼叫系统中的指令,如fork()。这也就是为什么Java中只有执行绪概念而没有程序概念,而C语言两者均具有。
C语言是面向过程的语言,执行效率高;Java是面向物件的语言,执行效率比C语言低。C语言最关键的是比Java多了指标,而C语言的亮点指标很容易出错,能够灵活的运用指标是件很难的事。用好了,对你的程式是锦上添花,反之,就会让你的程式崩溃掉。
C语言的安全性不如Java,因为C语言没有Java的垃圾回收机制,申请的空间要手动释放。
在速度上,C语言编写的程式要优于Java,因为Java必须执行在虚拟机器的环境中,但是因为虚拟机器,Java获得的平台无关性,而C语言的程式有可能需要重新修改编译才能实现平台的移植,另一方面,C语言比Java语言更“底层”,因此可以用C语言编写例如硬体的驱动,而Java却不行。
Java和C语言还有个明显的不同就是C语言注重的是演算法,但是Java却不一样,想用的时候导包就可以了。C语言的演算法很重要,但是Java中的演算法没有C语言那么复杂。列印的方法:C语言是printf('…….');而Java是System.out.print('…….'),也可以用println,ln表示换行。
Java程式中的基本资料型别(boolean, char, byte, short, int, long, float, double),是对物件的引用;C语言也有许多种基本型别,还有struct, union, enum, 阵列和指标。在Java没有列举、联合型别。
Java采用Unicode字符集,C语言通常采用的是ASCII字符集,A—65,a—97。C语言的变数可以不进行初始化,但Java的变数要进行初始化。在C语言中,char型别占一个位元组,在Java中char型别占2个位元组。
Java面向物件的特征主要有封装,关系是单一的、非多重的,一个子类只有一个父类,子类的父类又只有一个父类。C语言支援“运算子的过载”,这是它的一个很重要的多型特征,是资料抽象和泛型程式设计的利器。它允许直接对物件进行四则运算,正像基本资料型别那样Java不支援这种多型机制,也是为降低复杂性。Jvav可以支援方法过载和重写,所谓过载就是一个类具备多个相同属性行为;重写就是在继承关系中父类的行为在不同的子类上有不同的实现。
在Java中比C语言多了一些修饰符,如访问修饰符Public(公共的)、Private (私有的)、Protected (受保护的)、预设。
Java有super关键字,指代父类物件,通常被用于呼叫父类的构造方法或一般方法 C语言 则没有super关键字,两者都有this,指代当前物件。
在Java中,除了static、final、private是静态系结以外,所有方法一律按动态系结处理。Java中可以将类组织起来用Package打包,而C语言没有。
所以JAVA更实用于开发东西,因为JAVA面向物件,和我们的思维很相似,所以开发起来就简单些,而C语言是面向过程,就和我们的思维方式有着差异,开发就很少了。而且很难。但因为C语言能够直接操作硬体,所以在一些嵌入式系统中,C语言是使用最广泛的语言。
宣告:以上部分内容来源网路,作为补充。这篇文章并非说Java与c语言谁好谁坏,语言没有好坏之分,而是要学会利用它们不同的特性来发挥最大化的效果。

JAVA语言和C语言有什么区别?

1、JAVA中的记忆体分配是动态的,程式设计师不必关心记忆体管理方面的问题 2、JAVA是一种解释型的语言 3、JAVA没有指标 4、JAVA仅允许单一继承 5、JAVA不能定义全域性变数 6、JAVA不用goto语句 7、JAVA不支援巨集定义 8、JAVA对每种资料型别都分配固定长度 9、JAVA中没有标头档案 java和C最本质的区别就是, java是面向物件的语言,而C是面向过程的语言(虽然C可模拟OOP, 但它从本质来说还是面向过程的). 而C多用于开发驱动程式,系统核心,嵌入式程式,等对速度要求比较高的程式. 它们的应用领域也不同,Java侧重于游戏类等软体,C语言侧重于应用程式的编辑相比而言c语言要容易些

我学的是C语言,同学是学Java的,它们的程式设计环境不同,所谓程式设计环境就是指编辑程式时的背景介面及执行环境的不同,简单说就是视觉效果不一样,
另外它们的程式语言不同,所谓程式语言就是指程式设计时所用的一些含有特定意义的命令,函式等。。。
还有,它们的应用领域也不同,Java侧重于游戏类等软体,C语言侧重于应用程式的编辑。。。
自我感觉C语言简单点,呵呵。。。

举例说明语言和言语的区别 JAVA语言和C/C++语言有什么异同?

C 是面向过程的程式设计语言~~~并且可以精确的控制硬体系统~~~
java 是面向物件的程式设计语言~~~执行在软体之上(也就是虚拟机器)不依赖C语言的情况下是不能控制硬体系统的~~~~
从某种意义上讲java要比C先进~~~但从另一种角度(硬体角度)观察C语言依然无敌~~~~
共同之处就是基础语法惊人的相似啊~~~简直就一样(个人看法)~~~~
学完c再学java应该注意程式设计思想的转换~~~从面向过程转变到面向独享~~~

C语言,C++语言,Java语言有什么区别

C不只能考级!!
UNIX,WINDOWS漏洞,微控制器。。很多地方都用到了C!!
C语言是高阶语言的基础,学习计算机语言可以先学C,但如果以后不用C直接学C++也行,但入门稍微困难点。
C是面向过程程式设计的,这样往往会导致所谓的单一程式,既所有的功能只能包含在几个(通常是一个)程式码模组中。
而C++是面向物件程式设计(OOP)的,他杜绝了C面向过程的缺陷.OOP常常要使用许多程式码模组,每个模组都有特定的功能,而且是孤立的。OOP提供了非常强大的多样性,大大增强了程式码的重用机会!
C语言有一个突出的优点就是适合于多种作业系统, 如DOS、UNIX,也适用于多种机型。
当然,C语言也有自身的不足,比如:C语言的语法限制不太严格,对变数的型别约束不严格,影响程式的安全性,对数族下标越界不作检查等。从应用的角度,C语言比其他高阶语言较难掌握。
总之,C语言既有高阶语言的特点,又具有组合语言的特点;既是一个成功的系统设计语言,有时一个使用的程式设计语言;既能用来编写不依赖计算机硬体的应用程式,又能用来编写各种系统程式;是一种受欢迎、应用广泛的程式设计语言。
C++:面向物件的语言.是一门独立的语言;他并不依赖C语言.是程式语言中最复杂的一门.而VC是用微软Visual C++编译器编译的语言,与标准c++有一些细微的不同.
Java程式中的每个变数要么是基本资料型别(boolean, char, byte, short, int, long, float, double),要么是对物件的引用
C++有许多种基本型别,额外还有struct, union, enum, 阵列和指标,C++指标可以指向物件,也可以不指向物件
Java没有列举、联合型别,因为Java认为没有必要。将可有可无的语言元素去掉是Java对C/C++做出的一大改变,因此,普遍认为Java较C++更轻便,更精简
Java采用Unicode字符集,C++通常用ASCII字符集。但ASCII是Unicode的子集,对于习惯于ASCII的程式设计师感觉不到区别
Java中的boolean型别不能转换成其他型别,反之亦然。C++最近引进了bool型别,代表布林型别,整型也作为逻辑判断
模板是一种“泛型程式设计思想”,它有别于“面向物件程式设计思想”。C++在很大程度上已经支援了这种新型程式设计方法,特别是STL的出现
Java目前仍未支援泛型程式设计,不过据说Sun公司有在Java中引入模板的计划
C++支援“运算子的过载”,这是它的一个很重要的多型特征,是资料抽象和泛型程式设计的利器。它允许直接对物件进行四则运算,正像基本资料型别那样
Java不支援这种多型机制,也是为降低复杂性
两种语言都支援方法过载(overloading)
在C++中,为了允许执行时动态决定哪个函式被呼叫,一个函式必须用virtual修饰。virtual关键字被自动继承,用以支援多型
凡是没有用virtual修饰的成员函式(包括static)都是静态系结的,即在编译时决定呼叫哪个版本
而在Java中,除了static、final、private是静态系结以外,所有方法一律按动态系结处理
C++中有“拷贝建构函式”的概念,在三种情况下,自动呼叫它
用一个物件初始化另一物件
物件作实参进行函式呼叫
物件作函式的返回值
通常,当一个物件需要做“深拷贝”(钱能:《C++程式设计教程》)时,我们需要为它事先定义“拷贝建构函式”、“赋值运算子的过载函式”和“解构函式”;否则编译器将以“按位copy”的形式自动生成相应的预设函式。倘若类中含有指标成员或引用成员,那么这三个预设的函式就隐含了错误
Java则没有这种语法结构和语义逻辑
C++支援inline函式,可以避免函式的堆叠呼叫,提高执行效率
Java无这种语义
C++中,建构函式的初始化列表是这样使用的:首先按继承顺序呼叫基类的建构函式构造基类物件,然后按宣告顺序呼叫成员物件的建构函式构造成员物件,最后对列表中出现的成员变数做初始化
Java不采用初始化列表这种构造机制
它们的构造顺序基本一致:
静态变数初始化
静态初始化块(Java)
呼叫基类的建构函式构造基类物件
例项变数的初始化
建构函式的其余部分
Java使用abstract关键字修饰抽象方法或抽象类
C++的对等语法是“纯虚拟函式”和“抽象类”
两者都使用抽象类作为继承层次中的基类,提供一般概念,由子类实现其抽象方法,且抽象类都不能被直接例项化为物件
Java中有final关键字,修饰类、方法或变数
final类不能被继承
final方法不能被子类覆蓋
final变数就是常量
C++中没有这个关键字,常量可以使用const或#define定义
const还可以修饰成员函式,即“常成员函式”,当一个const成员函式修改成员资料,或呼叫非const成员函式时,编译器会报错
我们应将不修改成员资料的函式宣告为const
Java和C++中的static关键字语法和语义基本相同
static成员变数又叫类变数,被类的所有物件共享
A::x (C++):必须在类体外初始化
A.x (Java):必须在类体内初始化
static成员方法又叫类方法,访问static变数
A::f( ) (C++)
A.f( ) (Java)
两者都有内部类和区域性类的语法和语义
Java中没有友元函式和友元类的概念,严格支援封装,不允许外部方法访问类的私有成员
而C++支援friend关键字,允许外部方法访问类的私有成员,因此不是一种纯面向物件的程式语言
Java中类或interface可以用public修饰,也可以不修饰;而C++类不能修饰
三种访问许可权的语义相同,语法略有差别
C++中还有继承许可权修饰符,Java则没有
class A: protected B, public C (C++)
class A extends B (Java)
Java有super关键字,指代父类物件,通常被用于呼叫父类的构造方法或一般方法
C++则没有super关键字
两者都有this,指代当前物件
Java有package的概念,可以将类组织起来,便于打包和部署,也有利于类的安全。C++没有这个概念,一个类可以被任意类访问
Java applet可以被嵌入HTML文件中,然后由Web浏览器下载和执行
Java API有对网路通讯的特别支援
C++则无内建网路功能
C++程式设计师必须显式地实现动态记忆体管理,在解构函式中用delete运算子或free( )函式释放物件和其他动态分配的资料空间,否则会造成“记忆体泄露”
而在Java中,垃圾收集是自动的。当物件的最后一个引用变数被释放掉,这个物件就成为垃圾收集器的候选物件了
因此Java不支援解构函式
finalize( )方法主要被用来释放先前开启的非记忆体资源,如档案控制代码
Java原始码被编译成位元组码(.class档案),位元组码是一种只有JVM才能识别的二进位制低阶程式码,它与具体的处理器无关,要由安装在OS之上的JVM解释执行,转换成相应平台的机器码,因此Java是体系结构中立和跨平台的
而C++直接被编译成底层平台的二进位制机器码,由CPU执行,是平台相关的
因此,当解释执行时,Java程式速度更慢
Java语言支援多执行绪,允许并发执行绪的同步与互斥操作
C++则没有这种内在机制
Javadoc.exe可以将Java程式的内容和结构转换成HTML格式的文件

  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码