Java是纯粹的面向对象编程语言,完全支持面向对象的三大基本特征:封装、继承和多态。Java程序的组成单位就是类,不管多大的Java应用程序,都是由一个个类组成的。

1. 一切都是对象

在Java语言中,除了8个基本数据类型值之外,-切都是对象,而对象就是面向对象程序设计的中心。对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。

对象具有状态,一个对象用数据值来描述它的状态。Java通过为对象定义成员变量来描述对象的状态;对象还有操作,这些操作可以改变对象的状态,对象的操作也被称为对象的行为,Java通过为对象定义方法来描述对象的行为。

对象实现了数据和操作的结合,对象把数据和对数据的操作封装成- -个有机的整体,因此面向对象提供了更大的编程粒度,对程序员来说,更易于掌握和使用。

对象是Java程序的核心,所以Java里的对象具有唯一一性, 每个对象都有一-个标识来引用它,如果某个对象失去了标识,这个对象将变成垃圾,只能等着系统垃圾回收机制来回收它。Java 语言不允许直接访问对象,而是通过对对象的引用来操作对象。

2.类和对象

具有相同或相似性质的- -组对象 的抽象就是类,类是对一类事物的描述,是抽象的、概念上的定义:对象是实际存在的该类事物的个体,因而也称为实例(instance)。

对象的抽象化是类,类的具体化就是对象,也可以说类的实例是对象。类用来描述一系列对象, 类概述每个对象应包括的数据,类概述每个对象的行为特征。因此,可以把类理解成某种概念、定义,它规定了某类对象所共同具有的数据和行为特征。

Java语言使用class关键字定义类,定义类时可使用成员变量来描述该类对象的数据,可使用方法来描述该类对象的行为特征。

在客观世界中有若干类,这些类之间有一定的结构关系。 通常有如下两种主要的结构系。

1.一般一特殊关系:这种关系就是典型的继承关系,Java语言使用extends关键字来表示这种继承关系,Java 的子类是一种特殊的父类。因此,这种一般-特殊的关系其实是一一种”isa”关系。

提示:

在讲授面向对象时经常提的一个概念一-般 一特殊的关系也可代表大类和小类的关i系。比如水果一苹果,就是典型的一般-特殊的关系,苹果isa水果, 水果的范围是不是比苹果的范围大呢?所以可以认为:父类也可被称为大类, 子类也可被称为小类。

2.整体→部分结构关系:也被称为组装结构,这是典型的组合关系,Java 语言通过在-一个类里保存另一个对象的引用来实现这种组合关系。因此,这种整体-部分结构关系其实是一-种 “has a”关系。

开发者定义了Java 类之后,就可以使用new关键字来创建指定类的对象了,每个类可以创建任意多个对象,多个对象的成员变量值可以不同一这表现 为不同对象的数据存在差异。

java纯粹面向对象_Java的面向对象特征相关推荐

  1. java基础面向对象_Java基础面向对象

    一.面向过程的思想和面向对象的思想 面向对象和面向过程的思想有着本质上的区别,作为面向对象的思维来说,当你拿到一个问题时,你分析这个问题不再是第一步先做什么,第二步再做什么,这是面向过程的思维,你应该 ...

  2. java wifi类_Java 接口——面向对象的精髓

    原标题:Java 接口--面向对象的精髓 接口有何用?面试宝典上背下来的总结,你真的明白吗?接口&工厂方法其实很简单,什么是接口先看看生活中的接口,比如USB接口. USB接口的设计者在最初就 ...

  3. java面向对象_JAVA中面向对象

    一.方法: 1.方法概述: 在JAVA中,方法就是用来完成解决某件事情或实现某个功能的办法. 2.方法的语法格式: 修饰符  返回值类型 方法名(参数类型 参数名1,参数类型 参数名2,.....){ ...

  4. java 向父类_Java基础——面向对象(Object父类)

    原标题:Java基础--面向对象(Object父类) 声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权:凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记. Obj ...

  5. java基础面向对象_Java基础-面向对象

    一面向对象基础 1 类:例如车有:小汽车.大卡车.三轮车.四驱车等等.但要用一个词概括它们,则可以统称为车.现在这个"车"就相当于 类 2 抽象类:一个被 abstract 修饰的 ...

  6. 怎样用uml类图生成java类_JAVA:面向对象编程的底层逻辑,深度剖析

    什么是面向对象 在目前的软件开发领域有两种主流的开发方法,分别是结构化开发方法和面向对象开发方法.早期的编程语言如C.Basic.Pascal等都是结构化编程语言,随着软件开发技术的逐渐发展,人们发现 ...

  7. java 面向组件_Java 面向对象

    面向对象: 1, 面向过程的思想 准备去一个地方: 先买车, 挂牌, 开导航, 踩油门, 过黄河, 穿越珠穆朗玛峰... 2, 面向对象的思想 我开着车去, 车怎么去随便 所有去这个地方的信息, 全部 ...

  8. java 纯面向对象_Java到底是不是一种纯面向对象语言?

    原标题:Java到底是不是一种纯面向对象语言? Java--是否确实的 "纯面向对象"?让我们深入到Java的世界,试图来证实它. 在我刚开始学习 Java 的前面几年,我从书本里 ...

  9. java中面向对象_java中的面向对象

    首先需要了解什么时面向对象呢? 面向: 基本义:面对,朝向 引申义:注重, 关注 对象: 世间一切的事物(万物皆对象) 面向对象思想: 面向对象思想就是把一个关注点放在一件事或一个活动中涉及到的人或事 ...

最新文章

  1. 图解NumPy,这是理解数组最形象的一份教程了
  2. python excel行数_使用python计算excel中的行数
  3. 0428专题:行内元素与块状元素
  4. P4301-[CQOI2013]新Nim游戏【线性基】
  5. 【线段树】蝴蝶与花(P6859)
  6. Lambdas:来到您附近的Java 8!
  7. 太和二中计算机考试,安徽省太和二中高二数学下册期末考试试题精选
  8. Unity3D基础27:C#随机函数与物体销毁
  9. 选择北大青鸟的九大理由
  10. Mathematical operation
  11. 基于Java的外卖订餐平台
  12. java实现基于关键字的文件夹(文件)的搜索、文件夹(文件)的复制、删除
  13. voronoi图代码_在Unity中实时计算Voronoi图
  14. IDEA连接服务器执行python程序
  15. 十三、结构类型(5)——联合
  16. Java实现斯皮尔曼相关系数(Spearman)及T检验
  17. VSCode中安装Django插件后实现html语法提示
  18. sin30度用c语言转换弧度制,【数学】弧度和角度的转换
  19. excel打开密码忘记了_忘记EXCEL表格密码怎么办,这样操作可以清除
  20. linux恢复群晖数据,数据丢失的后悔药,群晖NAS备份方案详解

热门文章

  1. 浅谈最近发布的金融行业多方安全计算的技术标准
  2. 产品的三层境界:工具-平台-生态
  3. 淘宝大数据之路【转】
  4. https下 http的会被阻塞 This request has been blocked; the content must be served over HTTPS.
  5. java 正则表达式提取价格
  6. 使用MAT(Memory Analyzer Tool)工具分析dump文件--转
  7. solr4.2增量索引之同步(修改,删除,新增)--转载
  8. 几种常用的加密方式简单介绍
  9. dreamweaver中的JSP的编程环境配置
  10. 友商逼急 雷急跳墙:生死看淡 不服就干