java的三大特性面向对象的三大特征在java中的体现?
java的三大特性 时间:2021-09-15 阅读:(
)
java的三个基本特征?
面向对象是有4个基本特征,从大学---》培训-----》面试-----》工作(面向对象有4个基本特征)
1封装:即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
(主要表现:类)
2继承:对象的一个新类可以从现有的类中派生,这个过程称为类继承。
(主要表现:子类和父类关系)。
3多态:多态性包括参数化多态性和包含多态性。
(多表现:类里面方法重载和子类方法覆盖父类方法)。
4抽象:重点讲抽象,抽象包括两个方面,一是过程抽象,二是数据抽象。
抽象把细节忽略,只关心功能。
比如说电脑有笔记本、台式机、平板电脑,它们看似不一样,但我们可以找有共同的功能,那就是它一定有上网的功能,我们把这个功能抽象出来放入电脑类里面,然后对于电脑类来说它只关心有没有上网功能,而对于如何实现上网功能细节并不考虑。
其实这种现象随处可见如:不同的数据库驱动问题。
(主要表现:抽象类和接口)JAVA的几个重要特点
1.2 Java的特点
Java是一个广泛使用的网络编程语言 ,它是一种新的计算概念。
首先 ,作为一种程序设计语言 ,它简单、面向对象、不依赖于机器的结构、
具有可移植性、鲁棒性、安全性、并且提供了并发的机制、具有很高的性能。
其
次 ,它最大限度地利用了网络 ,Java的小应用程序 (applet)可在网络上传输而
不受 CPU和环境的限制。
另外 ,Java还提供了丰富的类库 ,使程序设计者可以很
方便地建立自己的系统。
下面我们分别从这三个方面来讨论 Java的特点 ,然后通过把 Java与 C,
C++相比进一步指出它所具有的优点。
一、 Java语言
Java语言有下面一些特点 :简单、面向对象、分布式、解释执行、鲁棒、
安全、体系结构中立、可移植、高性能、多线程以及动态性。
:1.简单性
Java语言是一种面向对象的语言 ,它通过提供最基本的方法来完成指定的
任务 ,只需理解一些基本的概念 ,就可以用它编写出适合于各种情况的应用程
序。
Java略去了运算符重载、多重继承等模糊的概念 ,并且通过实现自动垃圾
收集大大简化了程序设计者的内存管理工作。
另外 ,Java也适合于在小型机上运
行 ,它的基本解释器及类的支持只有 40KB左右 ,加上标准类库和线程的支持也
只有 215KB左右。
库和线程的支持也只有 215KB左右。
2.面向对象
Java语言的设计集中于对象及其接口 ,它提供了简单的类机制以及动态的
接口模型。
对象中封装了它的状态变量以及相应的方法 ,实现了模块化和信息
隐藏 ;而类则提供了一类对象的原型 ,并且通过继承机制 ,子类可以使用父类
所提供的方法 ,实现了代码的复用。
3.分布性
Java是面向网络的语言。
通过它提供的类库可以处理 TCP/IP协议 ,用户
可以通过 URL地址在网络上很方便地访问其它对象。
4.鲁棒性 Java在编译和运行程序时 ,都要对可能出现的问题进行检查 ,以消除错误
的产生。
它提供自动垃圾收集来进行内存管理 ,防止程序员在管理内存时容易
产生的错误。
通过集成的面向对象的例外处理机制 ,在编译时,Java提示出可能
出现但未被处理的例外 ,帮助程序员正确地进行选择以防止系统的崩溃。
另外,
Java在编译时还可捕获类型声明中的许多常见错误 ,防止动态运行时不匹配问题
的出现。
5.安全性
用于网络、分布环境下的 Java必须要防止病毒的入侵。
Java不支持指针,
一切对内存的访问都必须通过对象的实例变量来实现 ,这样就防止程序员使用
"特洛伊 "木马等欺骗手段访问对象的私有成员 ,同时也避免了指针操作中容易
产生的错误。
6.体系结构中立
Java解释器生成与体系结构无关的字节码指令 ,只要安装了 Java运行时
系统 ,Java程序就可在任意的处理器上运行。
这些字节码指令对应于 Java虚拟
机中的表示 ,Java解释器得到字节码后 ,对它进行转换 ,使之能够在不同的平
台运行。
7.可移植性
与平台无关的特性使 Java程序可以方便地被移植到网络上的不同机器。
同时 ,Java的类库中也实现了与不同平台的接口 ,使这些类库可以移植。
另外,
Java编译器是由 Java语言实现的 ,Java运行时系统由标准 C实现 ,这使得Java
系统本身也具有可移植性。
8.解释执行
Java解释器直接对 Java字节码进行解释执行。
字节码本身携带了许多
编译时信息 ,使得连接过程更加简单。
9.高性能
和其它解释执行的语言如 BASIC、 TCL不同 ,Java字节码的设计使之能
很容易地直接转换成对应于特定CPU的机器码 ,从而得到较高的性能。
10.多线程
多线程机制使应用程序能够并行执行 ,而且同步机制保证了对共享数据的正确操作。
通过使用 多线程 ,程序设计者可以分别用不同的线程完成特定
的行为 ,而不需要采用全局的事件循环机制 ,这样就很容易地实现网络上的实
时交互行为。
11.动态性
Java的设计使它适合于一个不断发展的环境。
在类库中可以自由地加入
新的方法和实例变量而不会影响用户程序的执行。
并且 Java通过接口来支持
多重继承 ,使之比严格的类继承具有更灵活的方式和扩展性。
面向对象的三大特征在java中的体现?
一、封装
首先,属性能够描述事物的特征,方法能够描述事物的动作。
封装就是把同一类事物的共性(包括属性和方法)归到同一类中,方便使用。
封装:封装也称信息隐藏,是指利用抽象数据类型把数据和基于数据的操作封装起来,使其成为一个不可分割的整体,数据隐藏在抽象数据内部,尽可能的隐藏数据细节,只保留一些接口使其与外界发生联系。
也就是说用户无需知道内部的数据和方法的具体实现细节,只需根据留在外部的接口进行操作就行。
为了实现良好的封装,我们通常将类的成员变量声明为private,在通过public方法来对这个变量来访问。
对一个变量的操作,一般有读取和赋值2个操作,,我们分别定义2个方法来实现这2个操作,一个是getXX(XX表示要访问的成员变量的名字)用来读取这个成员变量,另一个是setXX()用来对这个变量赋值。
二、继承
1. Java继承
Java继承是面向对象的最显著的一个特征。
继承是从已有的类中派生出新的类,新的类能吸收已有类的数据属性和行为,并能扩展新的能力。
JAVA不支持多继承,单继承使JAVA的继承关系很简单,一个类只能有一个父类,易于管理程序,父类是子类的一般化,子类是父类的特化(具体化)
继承所表达的就是一种对象类之间的相交关系,它使得某类对象可以继承另外一类对象的数据成员和成员方法。
若类B继承类A,则属于B的对象便具有类A的全部或部分性质(数据属性)和功能(操作),我们称被继承的类A为基类、父类或超类,而称继承类B为A的派生类或子类。
继承避免了对一般类和特殊类之间共同特征进行的重复描述。
同时,通过继承可以清晰地表达每一项共同特征所适应的概念范围——在一般类中定义的属性和操作适应于这个类本身以及它以下的每一层特殊类的全部对象。
运用继承原则使得系统模型比较简练也比较清晰。
三、多态
方法的重写、重载与动态连接构成多态性; Java之所以引入多态的概念,原因之一是它在类的继承问题上和C++不同,后者允许多继承,这确实给其带来的非常强大的功能,但是复杂的继承关系也给C++开发者带来了更大的麻烦。
为了规避风险,Java只允许单继承,派生类与基类间有IS-A的关系(即“猫”is a “动物”)。
这样做虽然保证了继承关系的简单明了,但是势必在功能上有很大的限制,所以,Java引入了多态性的概念以弥补这点的不足,此外,抽象类和接口也是解决单继承规定限制的重要手段。
同时,多态也是面向对象编程的精髓所在。
?
要理解多态性,首先要知道什么是“向上转型”。
?
我定义了一个子类Cat,它继承了Animal类,那么后者就是前者的父类。
我可以通过
Cat c = new Cat(); ? 例化一个Cat的对象,这个不难理解。
但当我这样定义时: Animal a = new Cat();
父类引用只能调用父类中存在的方法和属性,不能调用子类的扩展部分;因为父类引用指向的是堆中子类对象继承的父类;(但是如果强制把超类转换成子类的话,就可以调用子类中新添加而超类没有的方法了。
)?
同时,父类中的一个方法只有在父类中定义而在子类中没有重写的情况下,才可以被父类类型的引用调用;?
对于父类中定义的方法,如果子类中重写了该方法,那么父类类型的引用将会调用子类中的这个方法,这就是动态连接。
易探云服务器怎么样?易探云是国内一家云计算服务商家,致力香港云服务器、美国云服务器、国内外服务器租用及托管等互联网业务,目前主要地区为运作香港BGP、香港CN2、广东、北京、深圳等地区。目前,易探云推出的国内云服务器优惠活动,国内云服务器2核2G5M云服务器低至330元/年起;成都4核8G/200G硬盘/15M带宽,仅1888元/3年起!易探云便宜vps服务器配置推荐:易探云vps云主机,入门型云...
ZJI是成立于2011年原Wordpress圈知名主机商—维翔主机,2018年9月更名为ZJI,主要提供香港、日本、美国独立服务器(自营/数据中心直营)租用及VDS、虚拟主机空间、域名注册业务。本月商家针对香港阿里云线路独立服务器提供月付立减270-400元优惠码,优惠后香港独立服务器(阿里云专线)E3或者E5 CPU,SSD硬盘,最低每月仅480元起。阿里一型CPU:Intel E5-2630L...
官方网站:点击访问亚州云活动官网活动方案:地区:美国CERA(联通)CPU:1核(可加)内存:1G(可加)硬盘:40G系统盘+20G数据盘架构:KVM流量:无限制带宽:100Mbps(可加)IPv4:1个价格:¥128/年(年付为4折)购买:直达订购链接测试IP:45.145.7.3Tips:不满意三天无理由退回充值账户!地区:枣庄电信高防防御:100GCPU:8核(可加)内存:4G(可加)硬盘:...
java的三大特性为你推荐
推信求一篇英文自推信.申请新加坡理共学院的.在线等.网管监控系统网管监控软件根据什么能看到你打开了什么程序和网页?信件格式书信格式怎么写文件下载在电脑上下载文件怎么下载庞大"机构庞大指挥不灵"是什么成语起英文名取个英文名文件损坏电脑总的提示文件损坏怎么办anychartjfreechar制作柱状图的时候。由于柱子之间的差距太大。有些柱子才个位有上千导致了Y轴数据太密集。求光纤是什么什么是光纤?购物网站设计购物网站如何设计漂亮且实用的购物车
日本vps 电影服务器 godaddy域名转出 天猫双十一秒杀 卡巴斯基永久免费版 免费mysql 柚子舍官网 百度云1t 彩虹云 云服务器比较 测速电信 卡巴斯基试用版下载 在线tracert nano 赵荣 云主机 次世代主机 主机之家 lighttpdwindows 六维空间登陆首页 更多