第七章:面向对象(三)

面向对象的特点:  封装,继承,多态

  1. 多态

    参数不同,运行结果不同,条件不同,运行结果不同。

    多态的前提:继承,重写,向上转型。

    多态的有点:1.减少代码量(福利。。)2.降低程序的耦合度。

  2. 向上转型

    父类  对象名=new 子类构造器;向上转型为系统自动转型,该子类对象只能访问父类里面定义的属性和方法。

  3. 向下转型

    子类  新对象名=(子类)原对象名。

    如果一个方法被重写,将访问重写之后的方法。

  4. 包的使用

    包是java中用来管理类的工具,相当于文件夹管理文件。

    在一个包下不能出现同名的类。

    1. package 关键字

      声明包: package 包名

      注:

      1. 包的声明必须是整个程序中的第一行。
      2. 在用一个源文件中,可有定义多个类,但只能有一个public类,且这个public类的类名必须和源文件名相同。
      3. 编译的时候,每个类都有一个字节码文件,名称与类名相同。
      4. 同包下的类可以直接访问,不同包下的类需先引入再访问。
    2. import 关键字

      用import关键字引入  import  包名.类名  或者  import  包名.*;

  5. 抽象类

    抽象类用abstract修饰,没有方法体,主要作用是被其他类继承。

    abstract关键字

    1. abstract用于修饰抽象类和抽象方法,
    2. 抽象方法必须在抽象类中,但抽象类中可以有非抽象方法。
    3. 抽象类不能创建对象,只能提供属性和方法用于其他类的继承,
    4. 抽象方法的重写,叫方法的实现。
    5. 具体化的子类是可以创建对象的。
    6. 抽象类是可以继承非抽象类的。
  6. 修饰符

    修饰符分为访问修饰符和非访问修饰符。

    1. 访问修饰符有 public  ,  protected    ,    private

访问修饰符的作用:修饰成员、变量、方法、构造器,类是能用public或者没有修饰符修饰。

用public修饰的包能被任何包下的类访问,没有修饰符(缺省值)修饰的类,只能被同包下的类访问。

非访问修饰符有  static  ,  final   ,  abstract  , synchronized  等等。注意:

  1. 同包下的类之间,可以访问非私有的属性,方法,构造器。

  2. 不同包下的类之间,只能访问共有的属性,方法,构造器。
  3. 私有的属性,方法,构造器,只能在当前来下使用,访问。
  4. 同包下,子类可以继承父类的非私有属性,方法。
  5. 不同包下,子类只能继承父类共有的和受保护的属性,方法。

接口接口是对类的不充,一个类可以有多个接口。定义:  [修饰符]  interface  接口名 {[常量];[抽象方法]}接口的实现: 用implements 关键字 : [修饰符]  class 类名  implements 接口1,接口2... 接口的继承:子接口 extends 父接口1,父接口2....注意:接口里只能是常量和抽象方法,且只能用public修饰。final 关键字

  1. 修饰类:该类不能被继承;

  2. 修饰属性:该属性是常量,不能被重新赋值。
  3. 修饰方法:不可重写,可被继承。

时间: 2024-10-15 12:39:13

第七章:面向对象(三)的相关文章

《软件工程 ——理论、方法与实践》知识概括第七章 面向对象分析

第7章 面向对象分析    面向对象的分析模型:功能模型.分析对象模型.动态模型. 一.分析的概念 分析类可以划分为实体类.边界类和控制类. 在UML语言中,使用构造型<<entity>>.<<boundary>>和<<control>>分别表示实体类.边界类.控制类. 分析活动:理解用例模型.识别分析类(识别实体类.识别边界类.识别控制类).定义交互行为.建立分析类图(定义属性.定义行为.定义关系).评审分析模型.分析过程是一个循环

软件工程概论第七章--面向对象分析

本章主要讲了面向对象分析,从分析的概念.识别分析类.定义交互行为.建立分析类图和评审分析模式几个方面展开讲述.面向对象分析模型由三个独立模型,功能模型.分析对象模型.动态模型. 分析的概念中主要讲了分析类与分析活动,分析类用于描述系统中较高层次的对象,从软件功能需求来看能划分为实体类.边界类和控制类.分析活动把需求获取阶段产生的用例和场景转换成分析模型. 识别分析类讲了识别边界类.识别控制类.识别实体类三个方面,识别边界类,通常一个参与者与一个用例之间的交互或通信关联对应一个边界类.识别控制类,

第七章 面向对象(一)

7 面向对象 7.1 类和对象 类:现实世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起. 对象:类的具体实例 7.2 成员变量和局部变量     7.2.1 作用范围 成员变量作用于整个类中. 局部变量作用于方法或语句中.     7.2.2 内存中的位置 成员变量在堆内存中 局部变量在栈内存中 7.3 匿名对象 创建对象时不起名字:new Car(): 匿名对象是对象的简化形式 7.3.1 使用情况 1.对对象的方法只进行一次调用 2.作为实际参数进行传递 7.4 构造函

第七章 面向对象(2):对象的使用

上一篇我们介绍了面向对象以及类,其中也有一些关于对象的概念. 简单的说,对象就是特征与技能的结合体. 7.3.1 __init__方法 __init__方法用来为对象指定对象自己独有的特性.(初始化方法) class Student: school = 'aaa' # 变量又称-类的数据属性 def __init__(self, name, sex, age): # 实例化的时候就会调用__init__方法 self.Name = name # 把参数传入实例化的对象 (python 大小写区分

第七章-面向对象高级编程

1 使用__slots__ 1.1 绑定属性和方法 给实例绑定属性 class Student(object): pass >>> s = Student() >>> s.name = 'Michael' # 动态给实例绑定一个属性 >>> print(s.name) Michael 给某个实例绑定方法 >>> def set_age(self, age): # 定义一个函数作为实例方法 ... self.age = age ...

《软件工程概论》第七章 面向对象分析

分析类: 实体类:用于描述必须存储的信息及其相关行为. 边界类:用于描述外部参与者与系统之间的交互. 控制类:用于描述一个用例所具有的事件流控制行为. 分析活动: 需求分析的重点在于理解系统本身,它将需求获取阶段产生的用例和场景转换成分析模型. 识别分析类: 识别边界类 识别控制类 识别实体类 定义交互行为:顺序图 建立分析类图: 定义关系和属性 应用分析模式 评审分析模型

第七章 面向对象(3):继承与派生

7.4 继承:减少类之间的冗余 什么是继承? + 继承指的是类与类之间的关系,是一种什么"是"什么的关系 继承的作用: 解决代码重用问题 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可以称为基类或超类,新建的类称为派生类或子类. 对象的属性查找: 对象中找>类中找>父类找>父类的父类...>最上级父类>报错 类继承例: class Parentclass1: pass class Parentclass2: pass

软件工程—第七章

第七章—面向对象分析 分析类是概念层次上的内容,用于描述系统中较高层次的对象,分析类可分为实体类.边界类.控制类.实体类用于描述必须存储的信息及其相关行为(需要长久的保存),两种表示方法:1.构造型<<entity>>的类形式2.图表形式.边界类用于描述外部参与者与系统之间的交互.控制类用于描述一个用例所具有的事件流控制行为. 那么怎么识别这些分析类呢?通常一个参与者与一个用例之间的交互或通信关联对应一个边界类.控制类与用例存在着密切的关系,在用例开始执行时创建,在用例结束时取消.

软件工程概论总结第七章

第七章  面向对象分析  分析类   在分析对象模型中,分析类是概念层次上的内容,用于描述系统中较高层次的对象. 实体类:表示系统存储和管理的永久信息: 边界类:表示参与者与系统之间的交互: 控制类:表示系统在运行过程中的业务控制逻辑. 分析活动  需求分析的重点在于理解系统本身,它将需求获取阶段产生的用例和场景转换成分析模型. 识别分析类 识别边界类 通常,一个参与者与一个用例之间的交互或通信关联对应一个边界类.边界类收集来自参与者的信息,这些信息可以被实体类和控制类使用. 识别控制类  控制

第七章、面向对象分析

第七章.面向对象分析1.分析类,可划分为实体类.边界类和控制类种类型.  a.实体类:表示系统储存和管理的永久信息.  b.边界类:表示参与者与系统之间的交互.  c.控制类:表示系统在运行过程中的业务控制逻辑.2.面向对象的思想主要包括:   继承 多态 封装          封装:用抽象的数据类型将数据和基于数据的操作封装在一起,数据被保护在抽象数据类型内部.   继承:子类拥有父类的所有数据和操作.        多态:一个程序中同名的不同方法共存的情况.      有两种形式的多态–