J-6 面向对象

面向对象

面向对象概述
类与对象
对象内存图
成员变量和局部变量的区别

一、面向对象概述

面向过程与面向对象

  • 面向对象是基于面向过程的编程思想。
  • 面向过程:强调说的是每一个功能的步骤
  • 面向对象:强调的是对象,然后由对象去调用功能
  • 特点: 更符合思想习惯,将复杂事情简单化,角色从执行者变成指挥者。

面向对象开发、设计及其特征

  • 面向对象开发:创建对象--使用对象--指挥对象做事情。
  • 面向对象设计:管理与维护对象间的关系
  • 面向对象特征:封装(encapsulation)、继承(inheritance)、多态(polymorphism)。

二、类、对象

类与事物对应关系

事物
属性 成员变量
行为 成员方法

  • 定义:是一组相关的属性和行为的结合,是一个抽象的概念。eg:学生
    定义类,就是定义该类的成员变量和成员方法。
  • 类的组成:成员方法、成员变量、构造方法。
    成员变量:同变量,但是定义在类中方法外
    成员方法:同方法。

对象

  • 定义:是该类事物的具体表现形式,具体存在的个体。eg:班长
  • 创建对象:

      类名 对象名 = new 类名();
  • 使用成员变量:

      对象名.变量名;
  • 使用成员方法:

      对象名.方法名(···)

三、对象内存图

  • 一个对象的内存图

  • 两个对象的内存图

  • 三个对象的内存图

  • 创建对象的内存图

四、成员变量和局部变量的区别

  • 在类中的位置不同
    成员变量:类中方法外
    局部变量:方法定义中或方法声明上
  • 在内存中的位置不同
    成员变量:在堆中
    局部变量:在栈中
  • 生命周期不同
    成员变量:随着对象的创建而存在,随着对象的消失而消失。
    局部变量:随着方法的调用而存在,随着方法的调用完毕而消失。
  • 初始化值不同
    成员变量:有默认值
    局部变量:无默认值,必须定义,赋值,使用。

转载于:https://www.cnblogs.com/android-lyz/p/4755377.html

你可能感兴趣的:(J-6 面向对象)