「cjava面向对象」cJAVA
本篇文章给大家谈谈cjava面向对象,以及cJAVA对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、"C语言和Java语言一样是可以面向对象编程"这句怎么错?
- 2、Java里面的面向对象和C语言里面的面向过程分别是什么意思?
- 3、C++与Java都是面向对象,有什么区别吗?
- 4、为什么说c语言是面向过程的,Java是面向对象的
- 5、C, Java, Pascal, Fortran 哪个属于是面向对象的 程序语言
"C语言和Java语言一样是可以面向对象编程"这句怎么错?
C 语言是面向“过程”的编程语言,Java 是面向“对象”的编程语言。
两者的编程法方不同。
这个需要“亲自编程实践”之后才能真正的 理解 这种差异,如果只是停留在字面上 就很难理解。
希望我的解释对你有点帮助。
Java里面的面向对象和C语言里面的面向过程分别是什么意思?
java和c语言面向对象与面向过程程序设计有如下不同:
(1)面向过程程序设计方法采用函数(或过程)来描述对数据的操作,但又将函数与其操作的数据分离开来;面向对象程序设计方法将数据和对数据的操作封装在一起,作为一个整体来处理。 函数与数据是否分离
(2)面向过程程序设计方法以功能为中心来设计功能模块,难于维护;而面向对象程序设计方法以数据为中心来描述系统,数据相对于功能而言具有较强的稳定性,因此更易于维护。
(3)面向过程程序的控制流程由程序中预定顺序来决定;面向对象程序的控制流程由运行时各种事件的实际发生来触发,而不再由预定顺序来决定,更符合实际需要。 预定顺序;由运行时各种事件的实际发生来触发
(4)面向对象程序设计方法可以利用框架产品(如MFC,Microsoft Foundation Classes)进行编程。 面向对象可利用框架 面向对象和面向过程的根本差别,在于封装之后,面向对象提供了面向过程不具备的各种特性,最主要的,就是继承和多态。
在实际的开发中,如果使用c语言开发更注重于底层的交互,可以提升速度,在一些应用层面比如网页、手机系统的开发,大多数会选择java语言,比较容易快的构建出应用。目前来说大部分的游戏都是使用C语言开发还有一些脚本语言,比如lua,但考虑到市场上的占有率,如果不想花很多时间来学习的话,java语言是一门可以快速入门的。
C++与Java都是面向对象,有什么区别吗?
c++和java都是面向对象,在一些语法结构和对象的处理的区别如下:
1.指针
JAVA语言让编程者无法找到指针来直接访问内存无指针,并且增添了自动的内存管理功能,从而有效地防止了c/c++语言中指针操作失误,如野指针所造成的系统崩溃。但也不是说JAVA没有指针,虚拟机内部还是使用了指针,只是外人不得使用而已。这有利于Java程序的安全。
2.多重继承
c++支持多重继承,这是c++的一个特征,它允许多父类派生一个类。尽管多重继承功能很强,但使用复杂,而且会引起许多麻烦,编译程序实现它也很不容易。Java不支持多重继承,但允许一个类继承多个接口(extends+implement),实现了c++多重继承的功能,又避免了c++中的多重继承实现方式带来的诸多不便。
3.数据类型及类
Java是完全面向对象的语言,所有函数和变量部必须是类的一部分。除了基本数据类型之外,其余的都作为类对象,包括数组。对象将数据和方法结合起来,把它们封装在类中,这样每个对象都可实现自己的特点和行为。而c++允许将函数和变量定义为全局的。此外,Java中取消了c/c++中的结构和联合,消除了不必要的麻烦。
4.自动内存管理
Java程序中所有的对象都是用new操作符建立在内存堆栈上,这个操作符类似于c++的new操作符。下面的语句由一个建立了一个类Read的对象,然后调用该对象的work方法:
Read r=new Read();
r.work();
语句Read r=new Read();在堆栈结构上建立了一个Read的实例。Java自动进行无用内存回收操作,不需要程序员进行删除。而c十十中必须由程序贝释放内存资源,增加了程序设计者的负扔。Java中当一个对象不被再用到时,无用内存回收器将给它加上标签以示删除。JAVA里无用内存回收程序是以线程方式在后台运行的,利用空闲时间工作。
5.操作符重载
Java不支持操作符重载。操作符重载被认为是c十十的突出特征,在Java中虽然类大体上可以实现这样的功能,但操作符重载的方便性仍然丢失了不少。Java语言不支持操作符重载是为了保持Java语言尽可能简单。
6.预处理功能
Java不支持预处理功能。c/c十十在编译过程中都有一个预编泽阶段,即众所周知的预处理器。预处理器为开发人员提供了方便,但增加丁编译的复杂性。JAVA虚拟机没有预处理器,但它提供的引入语句(import)与c十十预处理器的功能类似。
7. Java不支持缺省函数参数,而c十十支持
在c中,代码组织在函数中,函数可以访问程序的全局变量。c十十增加了类,提供了类算法,该算法是与类相连的函数,c十十类方法与Java类方法十分相似,然而,由于c十十仍然支持c,所以不能阻止c十十开发人员使用函数,结果函数和方法混合使用使得程序比较混乱。
Java没有函数,作为一个比c十十更纯的面向对象的语言,Java强迫开发人员把所有例行程序包括在类中,事实上,用方法实现例行程序可激励开发人员更好地组织编码。
8 字符串
c和c十十不支持字符串变量,在c和c十十程序中使用Null终止符代表字符串的结束,在Java中字符串是用类对象(strinR和stringBuffer)来实现的,这些类对象是Java语言的核心,用类对象实现字符串有以下几个优点:
(1)在整个系统中建立字符串和访问字符串元素的方法是一致的;
(2)J3阳字符串类是作为Java语言的一部分定义的,而不是作为外加的延伸部分;
(3)Java字符串执行运行时检空,可帮助排除一些运行时发生的错误;
(4)可对字符串用“十”进行连接操作。
9“goto语句
“可怕”的goto语句是c和c++的“遗物”,它是该语言技术上的合法部分,引用goto语句引起了程序结构的混乱,不易理解,goto语句子要用于无条件转移子程序和多结构分支技术。鉴于以广理由,Java不提供goto语句,它虽然指定goto作为关键字,但不支持它的使用,使程序简洁易读。
l0.类型转换
在c和c十十中有时出现数据类型的隐含转换,这就涉及了自动强制类型转换问题。例如,在c十十中可将一浮点值赋予整型变量,并去掉其尾数。Java不支持c十十中的自动强制类型转换,如果需要,必须由程序显式进行强制类型转换。
11.异常
JAVA中的异常机制用于捕获例外事件,增强系统容错能力
try{//可能产生例外的代码
}catch(exceptionType name){
//处理
}
为什么说c语言是面向过程的,Java是面向对象的
面向过程的,主要是因为在用C语言的编程时整个计算过程是一步一步体现出来. 面向对象的,主要是体现在编程时有已经定义的对象可以套用. 区别在于:可移植性的好坏.
C, Java, Pascal, Fortran 哪个属于是面向对象的 程序语言
面向对象的 程序语言
译者序
不要将本文简单地视为是对C++特征的一个介绍。它的意义在于,一方面介绍了编程风格的演变,以及这种演变背后的动机
。另一个方面,它特别澄清了基于对象的(OB)和面向对象(OO)的异同,这是具有很大意义的。我们可以看到,
不管是OB还是OO,都不过是一种程序的组织形式。 这在很大程序上指出了OO着眼于解决什么样的问题
(程序如何组织才能有弹性,容易重用和理解),而不解决什么问题(数据结构的设计,算法的设计)等等。
摘要
“面向对象编程”和“数据抽象”已经成为常用的编程术语,然而,很少有人能够就它们的含义取得一致的认识;本文以Ada,C++,Module 2,Simula和Smalltalk等语言为背景对此给出一个非正式的定义。基本的想法是将“支持数据抽象”等同于定义和使用新数据类型的能力,而将“支持面向对象编程”等同于对类层次的表达能力。同时,还讨论了通用编程语言为支持此种编程风格而必须提供的机制。文中虽然采用C++来表述问题,但其讨论的范围并不仅限于这个语言。
1 介绍
并不是所有的语言都是面向对象的。一般认为,APL,Ada,Clu,C++,LOOPS和Smalltalk是面向对象的,我也曾经听说过关于使用C, Pascal,Module-2,和CHILL进行面向对象设计的讨论。那么是否可以尝试使用Fortran和Cobol来进行面向对象设计呢?我认为那也一定是可行的。在很多圈子里,“面向对象”已经成为“优秀”的高科技代名词,在商业出版领域可以看到有以下的三段论:
Ada是优秀的
面向对象是优秀的
所以Ada是面向对象的
本文从通用编程语言的角度出发陈述了“面向对象”技术的概貌:
第2节比较了数据抽象和面向对象之间的异同,也将它们和其他的编程风格做了区分;同时,指出了为了支持不同的编程风格所需的重要机制。
第3节陈述了为高效地支持数据抽象所需的语言机制。
第4节讨论了支持面向对象所需的设施。
第5节陈述了传统硬件体系结构和操作系统对于数据抽象和面向对象编程施加的限制。
文中例子程序使用C++来书写,这部分是出于介绍C++的目的,部分是因为C++是少数几个同时支持数据抽象,面向对象程序设计和传统编程风格的语言。本文不讨论为支持特定高层语言特性而涉及的并发性和特殊硬件支持。
2.编程风格(Programming Paradigms)
面向对象编程是一种用来针对一类问题编写优质代码的编程技术。一个语言称为是“面向对象”的如果它支持(Support)面向对象风格的编程。
在这里存在一个重要的区别。
关于cjava面向对象和cJAVA的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。