Java面向对象的理解

合集下载

对java的认识和理解

对java的认识和理解

对java的认识和理解Java是一种高级的、面向对象的编程语言,由Sun Microsystems公司于1995年推出。

Java的设计目标是“一次编写,到处运行”,即可以运行于不同的操作系统和硬件平台。

Java具有跨平台性、通用性、安全性等优点,广泛应用于Web开发、移动应用开发、大数据处理等领域。

首先,Java是一种面向对象的编程语言。

面向对象编程(Object-Oriented Programming,简称OOP)是一种编程范式,它将数据和对数据的操作封装到对象中,通过对象之间的交互来实现程序的逻辑。

Java中所有的数据都被视为对象,通过类(class)定义对象的属性和行为,通过实例化类来创建对象并进行操作。

面向对象的编程使得代码结构清晰、模块化,易于扩展和维护。

其次,Java具有跨平台性。

Java是通过Java虚拟机(Java Virtual Machine,简称JVM)来实现跨平台。

Java源代码编译生成的是字节码(bytecode),而非机器码。

在不同平台上,只需要安装对应平台的JVM,就可以运行相同的字节码。

这使得Java应用程序能够无需修改就可以运行于不同的操作系统上,实现了“一次编写,到处运行”的目标。

另外,Java是一门通用的编程语言。

通用性意味着Java可以用于开发各种类型的应用程序,包括桌面应用、Web应用、移动应用等。

Java提供了一系列的开发工具和库,开发者可以使用这些工具和库快速构建应用程序。

Java的通用性使得它成为了广泛应用于各个领域的编程语言。

此外,Java还具有强大的安全性。

Java引入了严格的安全机制来保护运行环境和应用程序的安全。

JVM的安全管理器可以控制哪些操作是被允许的,避免了恶意代码的执行。

Java还提供了许多内置的安全性特性,如内存管理、异常处理等,可以有效地防止常见的安全漏洞。

最后,Java拥有庞大的社区和丰富的生态系统。

Java社区活跃,有着众多的开发者和专家,提供了丰富的文档、教程、博客等资源。

什么是面向对象、对象是什么、什么是类、如何使用对象、类和对象的关系

什么是面向对象、对象是什么、什么是类、如何使用对象、类和对象的关系

什么是⾯向对象、对象是什么、什么是类、如何使⽤对象、类和对象的关系⾯向对象⼀、⾯向对象 概念:⾯向对象是⼀种编程思想,使⽤编程语⾔解决现实问题的⼀种思路。

分类: ⾯向过程: C 语⾔ ⾯向对象: Java ⾯向对象的思想: ⾯向对象的思想: ⾯向过程的思想:⾃顶向下 逐步执⾏。

---> 当解决⼀件事情的时候,⾸先想到的是我该怎么去做⾯向对象思想:以对象为中⼼,使⽤对象调⽤其功能。

---> 当解决⼀件事情的时候,⾸先想到的是我该让谁帮我做。

想到的谁 ---> 对象 对象:现实⽣活中存在的真实的事物都是对象,Java 中有⼀句名⾔: 万物皆对象,⼤到宇宙、⼩到夸克在Java 的世界中都可以看成对象。

提起对象,就需要提起另⼀个概念——类。

类是对象的模板,对象是类的实例。

⼆、类 概念: 将具有相同特征的⼀类事物的共性进⾏抽取(抽取的过程叫做抽象),形成的⼀个概念叫做类。

类的抽象: 1. 怎么去描述⼀个事物,从哪些维度进⾏描述? 这个事物具有什么 ---> 属性 这个事物会做什么 ---> ⾏为 2. 怎么去描述⼀类事物的共性? 这些事物具有什么 ---> 属性 这些事物会做什么 ---> ⾏为 类和对象的关系: 类是对象的模板 对象是类的实例 类的定义: 概述: 属性 : 使⽤成员变量来进⾏描述 ⾏为 : 使⽤成员⽅法进⾏描述 语法:关键词:class语法:public class 类名{} 成员变量 定义位置:类中⽅法外 语法: 数据类型 变量名; / 数据类型 变量名 = 初始值;作⽤域:⾄少在本类 默认值: 和数组元素的默认值是⼀样的 基本数据类型 整数类型 0 ⼩数类型 0.0 字符类型空字符 布尔类型 false 引⽤数据类型 null 定义的注意事项 1. 在同⼀个类中不能定义两个同名的成员变量 2. 在同⼀个类中成员变量可以和局部变量可以重名,但是在访问的时候,局部变量优先。

JAVA是什么意思JAVA是什么意思

JAVA是什么意思JAVA是什么意思

JAVA是什么意思JAVA是什么意思JAVA的意bai思是计算机的编程语⾔。

Java通过⾯du向对象zhi的编程语⾔。

dao它不仅吸收了C++语⾔的优点zhuan,⽽且摒弃了shuC++中难于理解的多继承和指针的概念。

具有简单性、功能强⼤、分布式、健壮性、安全性、平台独⽴与可移植性、多线程及动态性的特点。

Java语⾔作为静态⾯向对象的编程语⾔的代表,可以充分的实现⾯向对象的理论,并允许程序员以⼀种优雅的思维⽅式编程复杂的程序。

可以编写桌⾯应⽤程序、Web应⽤程序、分布式系统和嵌⼊式系统应⽤程序。

扩展资料Java的技术应⽤在Android的应⽤。

许多Android应⽤程序是由Java程序员开发的。

虽然Android使⽤不同的JVM和不同的封装⽅法,但是代码是⽤Java语⾔编写的。

在⾦融业的应⽤。

Java⼴泛应⽤于⾦融服务业。

许多第三⽅交易系统,银⾏和⾦融机构选择在Java开发,因为Java是相对安全的。

在⾼频交易的空间应⽤。

Java平台提⾼了平台的特性,并使得它能够像编译C++那样传输数据,已经成为程序员编写交易平台的⼀种语⾔。

JAVA的意bai思是计算机的编程语⾔。

Java通过⾯du向对象zhi的编程语⾔。

dao它不仅吸收了C++语⾔的优点zhuan,⽽且摒弃了shuC++中难于理解的多继承和指针的概念。

具有简单性、功能强⼤、分布式、健壮性、安全性、平台独⽴与可移植性、多线程及动态性的特点。

Java语⾔作为静态⾯向对象的编程语⾔的代表,可以充分的实现⾯向对象的理论,并允许程序员以⼀种优雅的思维⽅式编程复杂的程序。

可以编写桌⾯应⽤程序、Web应⽤程序、分布式系统和嵌⼊式系统应⽤程序。

扩展资料Java的技术应⽤在Android的应⽤。

许多Android应⽤程序是由Java程序员开发的。

虽然Android使⽤不同的JVM和不同的封装⽅法,但是代码是⽤Java语⾔编写的。

在⾦融业的应⽤。

Java⼴泛应⽤于⾦融服务业。

怎样在JAVA教学中让学生理解面向对象

怎样在JAVA教学中让学生理解面向对象
1榍述 等 以及行为 变档位涮 车等 。 但是 每辆自行 的学生' 往往喜欢先写—个顺序 , 的程序, 执l 行 再把它 Jv是 Sn aa u 公司推出的新的—代面向对象程 车的状态都是独立的并 目跟其它 自行车不同。 当厂 嵌入—个或两个巨大的对象里。 根据编程原理对象 序 设 计i言 , 的平 台无 关性特 别适 合 于 It t 家制造 自行车的H候 厂商利用了自行车共有的特 吾 它 ne me 寸 应用程 序本身 。 应獬 开发所 以一经 睢出 就备受 青睐 ‘ It - 链 ne r 自 行车。 如果制造一 c + + 是真正的面向 对象编程语 但它也是过程编 n tH aa e v 编程” YJ 已经或为技术 ^员的—种时尚。 、 许 辆 自行车就要产生—个新蓝图獭痒就太低了。 我们 程语言。 它不但考虑了面向对象的特性而 耳也更多 多大学也没置了 Jv 语言的课程戒们在教授 Jy 在面向对象的程序没计中, aa aa 同样地可以让相同种类 的考虑了对 C 语言的向后兼容, 使得 c + + 表现出 语言的过程中发现 由于在前期的课程当中学 生并 的许多 对象来共有—些特性 就象自 行车制造商那 “ ” “ ” 过程 和 对象 编程 的双 重性 , 可 以继续 用 c + 既 + 没有学习过面向对象的相关概念和知讽 因此 r i 于 样磊Ⅱ 用相同种类的对象是相似的这一事实为这些 编译器来编写传统的 C程序’河 以 畦 使用 c + + 的类 学生学习和理解 Jv语言的编程带来了很大的困 对象创建—个蓝图, aa 也就是 J a a 语言中的对象的软 库或者编写自己的类来作面向对象编程。这使{ 人 v 导 难。 件蓝图——类。 们可以继续保留原有的 C代 但是同时1 目 黾 碍了 如果学生以前从来没有使用过面向对象话言。 2 3对象和类的关系。学生们可能会注意到对 面向 对象思想的推广。 从事面向对象编程 可以分为 在教学当中, 我们就需要在开始编写 J A代码之 象币 看起来很相似在现实世界中类 和对象之间 ‘ AV 喽 ‘ 类库的创建者” 【 和‘ 类库的使用者” 类通 常创建 两 前首先要向学生讲解面向对象编程的核心概念和 的区别也经常是让程序员们困 惑的源泉很 明显 类库的 ^ 才是真正懂得面向 对象思想的人 他们创 知识 比如对象 、 消息、 类和继承等等. 让他们理解什 不能是它们描述的对象本身。 然而, 在软件中 来区分 建类库供给那些“ 客户程序员” 来使用, 们从头开 f 也 么是对象、 什么是类、 对象和类的关系是怎样的以 类和对象是很困难的 有部分原因是由于软件对象 始制作类库 : 进行面向对象的分析、 设计和实现的 尉 羊妍 j 息襁 携 间逝 F f 消 i 通汛 给学 演示 只是现实世界中的电子模型或者是抽象概念, ; 但通 全 过程。 馓 照类的思 女 想来建立 邑 类库建 出具体的实例将这些概念编程代码实现。只 有让学 常也是由于X 象有时是指类和实例。 类是对象集合 立好之后 - 类库和派生类, 用 以及维护代码都将是 生理解了这些概念才能真正地教好这门课程。 的抽象庀 规定了这些对象 的 公樊 属性和力 i 砝 非常舒服的事隋。 aa 橡 Jv 的出现迎来了面向对象的曙 2列京和 类 是类 的— 个实 例 。 光。aa jv 的思想都是继承自其他的语言和技术它本 2 1对象。 面向对象可以说是 Jv语盲最重要 那个苹果贝 aa 悟 ; 而如果我们定义了—个水 身晰 够 东西也借鉴了 C + + 语言也就是说 j a a 去 v 的特点之一。 aa Jv语言的没汁编程完全是面向对象 果的 类。 这个时候就能够生成—个 苹果对象作为水 除 了 c +的 —些不太 好 的地 茏 在真正推 动 面向对 + 的庀 不支持类似 C 语言那样的面向过程的程序设 果类的—个实例。 对象和类的关系相当于_般的程 象编 陧思想,面是劝不可末 的。 . 使用 Jv 编程的时 aa 计技术。 aa Jv 语言的—个程序只是一系列对象的集 序设计语言中变量和变量类型的关系。 候 镳 骺 兼容 么 什 语赢 因刀 鲴 德立 合 f 的方法可以将其他的对象作为自己的变量 门 3面向对象和基于对象 的语言。 我们应当告诉学生 掌 握 J a a 语言之煎 v 使用, 而且将消息发给那些对象。什么是对象呢? 对 Ja a 语言是真正的面向 v 对象的编程语言' 多 必须将 自 彳 艮 己的编程思想 由 过程编程彻底转 向面向 象是—些相关的变量和方法的软件集, 在面向对象 人没有区 ‘ 面向对象” i 趑两个不同的 对象缔酲因为每个 J a 和‘ 寸 象’ a 程序本身就是—个类编 写 v 程序设计中, f 问题空间中的元素以及他 在 概念 f 始掣.讲鹪—下二者的区别 ^ 于 任何 i 程序 堤-不 自 玻I c 粥 们 1 应当 生 j 时 一 在 觉的构造—个对象模板, 方案空间中的表示物称 c 核 b ) 这 既念 星 学生学习和理解面向对象 进而学好 Jv 是很有帮 这里没有第二条道路 只能是面向对象编程; j o I 彳 aa 使用 难理解我们可以给学生讲解—下对象的特征对 象 助的 。 ia a 编写程 序 的时候, 须从—卟 l像 的角度 来考 v 必 列 有五大基本特征斯 有的东西都是对象程序是一大 现在台彳 多流行技术都是基于对象的庀 们使 虑问题 因为程序本身就是—个类 呖. 勺艮 考虑把哪些 堆对象的集合他 们通过消息传递各个对象之问知 用—些封装好的对氦 调用对象的方法艘置 对象的 东西作为成员变量踯 些作为方法要生成n 卜 / 类脚 道要做些什么匈 壤r 象都分配有 自 己的存储空间, 属性饵是它们无法让程序员派生新对象类型。 他们 可容纳其他对象每 个对象都有—个类型: 同一类的 和詹陛。 面向对象编程有 之所 以说 Jv 在 面向对 象的 贤 疗面要 比 c +彻 aa + 而所有的编程语言的 三大特点, 即封装 、 继承和多态三 者缺一不可通 常 底 就是因为我们只能使用面向对象的方式来编写 最终目的剧戤 冲啪 象方法。 对象的三个主 要特 ‘ ‘ 基 寸 只是使用对象. 象” 但是无法利用现有的对 iv 程序. c +却可以采用另外一条非面向对象 aa 而 + 征' hv0 — - . ai b e 广 i 兑明这个对象能做什么Sae 象模板产生新的对象类型继 而产生新的对象 也就 的方式来 tt一 编写程序。 aa Jv语言最大的贡献就是推广 当对象施加方法时对象的反映 etr—与 其他 是说“ dni t 基于对象” 没有继承的特点。 多态” 而“ 是表示 了面向对象的思想 。 相似行为对象的区分标志向— 嚼 象有唯一的 I t — 没 有 了继 承的 概念也 结束语 d ni, e ty 而这三者是相互影响的。 t 就无从汝 ‘ 多态” 所 以. 。 当我 4 断— 的技术 Jv 教学中必须要让学生掌握面向对象(0 , aa 0I 2 l 2类。 面向对象 是否是面向对象的时惋 通常可以使用后两个特陛 的主要要求学 会面向对象的思维方式只有这样用 模 板是蓝 图, 类实 际 匕黾对某 种类 型的对象 定 变 来加以判断. . . 面向对象’ 基于对象’ 实现了“ ’ 和“ 都 封 Jv 开发的系统才能是真正的 Jv 系统, aa aa 才能达到 量和方法的原型. 类是具 即 有相同操作功能和相同 装” 的概念但是 面向对象实现了“ 继承和多态” , 而 我们的教学目 使学生领会Jv 的灵魂所在糌 的' aa 合可 以 从类中构造一 “ 对象’ 『 有宴 E 习: ,般 贝 这些。 Jv 语言。 aa 个对象, 即创建—个类的实例。 类好比—个建材市场 4 面向对象和 面向过 程 参考 文献 其中有许多 — _ 各种各样的 装饰材 而我们 料. 1王克宏. 郝建文.aa jv 技术教程 ( 基础篇) 北 呻 定要让学生理解“ 面向对象” 是—种思想提: Il l 装修自己的房子就要选择我们需要的材料同样, 我们考虑事情的方法。 为 面向对象同面向过程相比最 京: 华大学 出版社002 清 0 了建立我们自己的 序. 顽 哂【 我f 选择我们需要的 大的区别就好 : 2 1 Jv a 北京: 清华大学出 版 前者首先共 的是所要处理的数 『 耿祥叉. a 基础教程 . 类, 我们用这个 比喻可以非常形象地向学生解释 据而 唇者宣 的是功能。  ̄2o 4 o. ‘ ’ ‘ 是什么。 更进—步的解释就是I现实世界中经 在 无逾是 C + + 还是 i a a 都有可能走 过程编程 p】B ueE k 1 hn i nJv v rc c e .T ikn i aa g Pet e rni c 1 rfsin l Te h ia f r n 己 O 6 常看到相同类型的 许多对象 比如.啪 自 仿 行车只是 的老路jv 降低了 aa 过程编写的可能 但是如果没 H8 lP o e so a c n c lRe e e c 2 O 现实世 中诲 自 界 多 - 行车中的一辆。 j 蝴 面向列象技 有具备面向对象的编程思想 . {aa 鲫 Jv 进行程序 术, 我们可以 说你的自 行车是自 行车对象类的—个 设计的时候还是可能走面向 过程的老路的。 对于一 实例。逋藏 自 行车有—些状 当前档位、 两个轮子 些习惯于岖 编程悬维 婷 耳初涉面向x 0’ f领域

java面向对象总结(一)

java面向对象总结(一)

java⾯向对象总结(⼀)1. 对象的概念及⾯向对象的三个基本特征⾯向对象的三⼤核⼼特性⾯向对象开发模式更有利于⼈们开拓思维,在具体的开发过程中便于程序的划分,⽅便程序员分⼯合作,提⾼开发效率。

⾯向对象程序设计有以下优点。

1. 可重⽤性:它是⾯向对象软件开发的核⼼思路,提⾼了开发效率。

⾯向对象程序设计的抽象、继承、封装和多态四⼤特点都围绕这个核⼼。

2. 可扩展性:它使⾯向对象设计脱离了基于模块的设计,便于软件的修改。

3. 可管理性:能够将功能与数据结合,⽅便管理。

该开发模式之所以使程序设计更加完善和强⼤,主要是因为⾯向对象具有继承、封装和多态 3 个核⼼特性。

继承性如同⽣活中的⼦⼥继承⽗母拥有的所有财产,程序中的继承性是指⼦类拥有⽗类数据结构的⽅法和机制,这是类之间的⼀种关系;继承只能是单继承。

例如定义⼀个语⽂⽼师类和数学⽼师类,如果不采⽤继承⽅式,那么两个类中需要定义的属性和⽅法.语⽂⽼师类和数学⽼师类中的许多属性和⽅法相同,这些相同的属性和⽅法可以提取出来放在⼀个⽗类中,这个⽗类⽤于被语⽂⽼师类和数学⽼师类继承。

当然⽗类还可以继承别的类,学校主要⼈员是⼀个⼤的类别,⽼师和学⽣是学校主要⼈员的两个⼦类,⽽⽼师⼜可以分为语⽂⽼师和数学⽼师两个⼦类,学⽣也可以分为班长和组长两个⼦类。

使⽤这种层次形的分类⽅式,是为了将多个类的通⽤属性和⽅法提取出来,放在它们的⽗类中,然后只需要在⼦类中各⾃定义⾃⼰独有的属性和⽅法,并以继承的形式在⽗类中获取它们的通⽤属性和⽅法即可。

封装性封装是将代码及其处理的数据绑定在⼀起的⼀种编程机制,该机制保证了程序和数据都不受外部⼲扰且不被误⽤。

封装的⽬的在于保护信息,使⽤它的主要优点如下。

保护类中的信息,它可以阻⽌在外部定义的代码随意访问内部代码和数据。

隐藏细节信息,⼀些不需要程序员修改和使⽤的信息,⽐如取款机中的键盘,⽤户只需要知道按哪个键实现什么操作就可以,⾄于它内部是如何运⾏的,⽤户不需要知道。

java学习之面向对象的四个特性

java学习之面向对象的四个特性

java学习之⾯向对象的四个特性对象:由⾏为、状态和唯⼀标志组成。

⼀抽象抽象是忽略⼀个主题中与当前⽬标⽆关的⽅⾯,把现实世界中的概念转换为对象,可以是表⽰数据的VO对象或抽象类,也可以是表⽰⼀类⾏为的接⼝。

有利于从众多变化的状态中抽离出不变的东西。

有利于使⽤继承来构造类的体系,实现多态,使⽤模板和⼯⼚模式⽅法来实现对业务过程的抽象。

抽象是概念建模和业务流程建模很重要的⼯具,是⾯向对象体系的基⽯,⽽不是⼀堆杂乱、混乱、重复、散沙般的、关系错综复杂的类。

⼆继承是⼀种连结类的层次模型,并且允许和⿎励类的重⽤,提供了⼀种明确表⽰共性的⽅法。

继承意味着能声明⼀个类型,⽽且能继承⽗类中的所有操作和数据,同事还有机会声明⾃⼰的新⽅法以改进、具体化、代替或者扩展⽗类中的⽅法使⽤⽗类为应⽤领域建⽴层次模型,提供代码重⽤并允许定制。

防⽌继承:利⽤final声明类或⽅法,意味不能被修改,当⼀个类被声明为final时,只有⽅法⾃动被设为final,⽽字段不会。

final有两个优点:1、安全 2⾼效类型转换:1、必须在继承体系内进⾏2、转换之前,应先使⽤instanceof进⾏检验。

super:不是⼀个对对象的引⽤,⽽是指向编译器调⽤超类的专⽤关键字:1、调⽤超类⽅法2、调⽤超类的构造器。

三、多态⼀个对象变量可以指向多种实际类型的现象。

动态绑定:⼀个对象在运⾏时⾃动选择正确的⽅法进⾏调⽤的现象过程:1、编译器检查对象的声明类型和⽅法(虚拟机预先为每个类计算⼀个⽅法表)2、重载解析:编译器检查⽅法调⽤中提供的⽅法参数类型(⽅法原型:名字和参数列表,返回值不是原型的⼀部分)3、静态绑定:如果⽅法是private,static,final的,或者是⼀个构造器4、动态绑定:虚拟机必须调⽤对象变量所指向的对象的实际类型和匹配的⽅法版本。

四、封装把数据和⾏为结合在⼀个包中,并对对象的使⽤者隐藏数据有关的实现过程,封装赋予对象“⿊盒”特性。

java面向对象程序设计简答题

java面向对象程序设计简答题

一、Java面向对象程序设计概述Java作为一种非常流行的编程语言,其核心思想之一就是面向对象程序设计。

面向对象程序设计是一种程序设计范式,它将计算机程序视为一组对象的集合,每个对象都可以接收消息、处理数据,并将数据传递给其他对象。

Java语言通过类和对象的概念来实现面向对象程序设计,使得程序更加易读、易维护,并且具有良好的扩展性和复用性。

二、Java面向对象程序设计的基础1.类和对象Java中的类是一种模板,它定义了对象的状态和行为。

对象是类的实例,它具有类所定义的属性和方法。

通过定义类和创建对象,可以更好地组织和管理程序的逻辑结构,实现代码的复用和扩展。

2.封装封装是面向对象程序设计的重要特性之一,它将数据和方法封装在类的内部,通过访问控制符来控制对象对其内部状态的访问。

这样可以隐藏对象的内部细节,避免外部代码直接依赖于对象的实现细节,从而提高代码的可维护性和安全性。

3.继承继承是面向对象程序设计的另一个重要特性,它允许一个类继承另一个类的属性和方法,并在此基础上进行修改和拓展。

通过继承,可以在不改变已有代码的情况下为现有类添加新的功能,提高代码的复用性和扩展性。

4.多态多态是面向对象程序设计的一个重要概念,它允许不同类的对象对同一消息做出不同的响应。

通过多态,可以实现接口的统一调用、代码的灵活性和可扩展性。

三、Java面向对象程序设计的实践1.使用类和对象在Java中,使用类和对象是编写程序的基本操作。

首先需要定义类,然后创建对象,并通过对象调用类中的方法来实现程序的功能。

定义一个名为Student的类,然后创建多个Student对象,并调用对象的方法来实现学生管理系统。

2.封装的应用封装可以将数据和行为封装在一个类中,通过访问控制符来控制对对象的访问。

在银行系统中,可以定义一个Account类来封装账户的信息和相关操作,避免外部直接操作账户的内部数据,提高系统的安全性。

3.继承的应用继承可以实现类的复用和扩展,通过子类继承父类的属性和方法,并在此基础上进行修改和拓展。

Java技术基础-面向对象特性

Java技术基础-面向对象特性
– –
包相当于名字空间 完整类名是什么? 使用*还是使用具体类? 引入多个类会不会引起文件 膨胀?
import
– –
松迪科技(北京)有限公司 松迪科技(北京)

早期软件开发采用面向过程编程
– –
使用三种控制结构描述出解决问题的步骤 数据与函数分离,数据与函数失去关联性 数据称为属性 函数称为方法 封装(保证了属性与方法的关联性) 封装 继承(代码复用) 继承 多态(在代码复用的同时,强化了个体性因素) 多态
Annotation
Annotation成员的类型,也就是方法返回类型, 只能是基本数据类型、Class、String、 annotation、枚举,或是以上类型的数组。 Annotation方法是没有体的,只能是public的, 也可声明成abstract的。 Annotation可以像接口一样被实现,但并不现 实意义。
默认访问权限,相当于友元,在包内可见 公共访问权限,均可见
在一个Java源文件中,只能有一个公共访问权 限的类,并且文件名必须与公共类名完全相同
松迪科技(北京)有限公司 松迪科技(北京)
成员访问权限
正常情况下,类内的各成员之间可相互访问, 访问其它类的成员应通过创建对象后使用点操 作符实现。 成员(方法、属性)访问权限
Java技术基础 技术基础
面向对象特性
松迪科技(北京)有限公司 松迪科技(北京)
提纲
包与引入 类
– – – – –
属性与方法 对象与引用 继承、多态、封装 抽象类 内部类
接口 枚举(JDK1.5) Annotation(JDK1.5)
松迪科技(北京)有限公司 松迪科技(北京)
包与引入
package
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java OOP
现在我们学习的已经不仅仅只是单纯的代码运用啦,我们是在学习一种思想,一种编程思想-------面向对象。

而面向对象的体现就是封装、继承、多态。

类与对象的区别
首先在理解类的时候还是有必要先提一下数据类型,int,String……基本数据类型和引用数据类型。

我们存储名字Name是要用到String类型,年龄则要用到Int
类型,但是如果我们有储存名字和年龄又要用到什么类型呢,这些基本类型和引用类型没有适合我们的,所以我们就要自定义一个类型person,让这个类型里面有一个Name属性和age属性。

然后我们就可以通过实体化这个类,对里面
的属性进行赋值,所以不难看出这个类就是我们自定义的类型,进一步说类就是我们的自定义类型!那么对象又是怎样定义的呢?我们先前所说的万物皆对象,这个说法虽然易于理解但是比较笼统,那对对象又是一个怎样的定义呢,还是举出上一个例子来说明。

在person类中有许多属性,这些属性我们称之为复合体,
而属性的值称为复合的值。

例如Name="张三"; age=20; 这里的张三20 就是复合体的值。

而从张三20 中我们能得到什么,一个名字叫张三年龄20岁的人,这就是一个对象。

所以对象就是复合体的值。

理解封装
类和对象理解清楚以后对我们以后的编程是有很大的帮助的,之后我们写出来的代码就不会有对与错的分别啦,而是优与良的差别。

封装现实一点的理解,把一个物品给包封后装起来。

编程里的封装其实和此一样,它是把属性私有化啦,限制对属性的访问,与此为属性创建一对取值和赋值的方法,用于对属性的访问。

封装的好处就是能够让我们的代码安全级别高一些。

构造方法
构造就是用来创建某些东西的,构造方法就是创建对象,负责对象成员的初始化工作,为实例变量赋予合适的初始值。

满足的条件是方法名和类名相同,但是不允许有返回类型。

方法的重载
方法重载的条件:方法名相同、参数列表不同、在同一个类中。

构造方法的重载目的:方法名的复用。

继承的使用
本质:代码的复用。

使用的时候一定要先创建父类对象,再创建子类对象。

使用关键字:extends表示一个类继承另一个类。

通过super调用父类的构造方法。

User user=new User();
=号左边的User是引用类型,在代码的运行阶段user能够调到哪些方法是由引用类型决定的。

而在运行阶段是由对象类型决定的(=号右边)。

而对象类型是由构造方法决定的,一旦创建将不会改变。

多态的使用
同一个引用指向不同的类型对象调相同的方法,运行结果不一样.
实现多态:
子类重写父类的方法、把父类类型作为参数类型,该父类及其子类对象作为参数传入。

运行时,根据实际创建的对象类型动态决定使用哪个方法。

相关文档
最新文档