黑马程序员技术交流社区

标题: 【石家庄校区】JavaEE 基础 day07笔记分享 [打印本页]

作者: sun2ice    时间: 2017-12-2 23:13
标题: 【石家庄校区】JavaEE 基础 day07笔记分享
本帖最后由 sun2ice 于 2017-12-2 23:17 编辑

day 07 面向对象基础
`
1面向对象的概述面向过程与面向对象
  • 面向过程
    • 就是面向具体的操作步骤和过程,把每一个步骤和过程完成后,相互调用实现
    • 强调过程 每人一步骤都需要自己完成
  • 面向对象
    • 不断的创建对象,让对象去完成需求,
    • 更符合人类思想习惯,(自己不做让别人做)可以将复杂的事情简单化

2类和对象的概述
  • 类 :具有相同属型和行为的集合
    • 用来描述现实世界的事物的
  • 事物

    • 属性 事物的描述信息------>对用类的成员变量
    • 行为 事物能做什么------> 对用类的成员方法
    • 例如 学生类

      • 属性 :姓名 学号,年龄
      • 行为 :学习,吃饭,睡觉

  • 类的使用
    • 其实就是使用该类的对象(成员变量和成员方法)
    • 创建对象:
      • 格式
        类名 对象名 = new 类名();
    • 调用对象的成员变量和成员方法
      对象名 . 变量名
      对象名. 方法名(...)

2.1成员变量和局部变量
  • 区别
    • 在类中的位置不同
      • 成员:类中 方法外
      • 局部:方法中或者方法上(形参)
    • 在内存中的位置不同
      • 成员:堆内存
      • 变量:栈内存
    • 生命周期不同
      • 成员:随着对象的创建而存在,小时而消失
      • 局部:随着方法的调用而存在,方法调用完后而消失
    • 初始值
      • 成员:有默认值
      • 局部:没有默认值 需要赋值初始化才能使用


3面向对象的特性之 封装3.1 关键字private
  • 一个权限修饰符
  • 可以修饰成员变量和成员方法
  • 被修饰的成员只在本类中访问
3.2常用使用
  • 成员变量私有 提供相应的getXxx和setXxx方法   public 数据类型 getXxx(){       return xxx;   }   public void setXxx(数据类型 xxx){       this.xxx=xxx;   }3.3封装的概述
  • 面向对象的三大特性之一
    • 封装 继承 多态
  • 封装原则
    • 将不需要对外提供的内容隐藏
    • 把属性隐藏 提供公共的方法访问
    • private getXxx和setXxx
  • 封装好处
    • 通过方法控制成员变量的操作--->提高代码的复用性
    • 将代码用方法进行封装--->提高了代码的复用性

3.4 this关键字
  • 变量的就近原则
    • 变量优先使用就近的变量类型
  • this
    • 代表所在类的对象的引用

3.5 构造方法
  • 给对象的数据进行初始化
  • 格式

    • 方法名与类型形同
    • 没有返回值类型 void也没有
    • 没有返回值(实际上返回的是 创建该类型的对象)  修饰符 类名(...){      方法体;                  }
  • 如何调用

    • 通过new调用
    • 格式  类名 对象名 = new 类名(...)
  • 注意事项:

    • 如果我们没有提供构造方法,系统会自动提供无参构造方法
    • 如果我们自己给出构造方法,系统将不会再提供无参构造方法
      • 建议自己提供无参构造方法

  • 成员变量的赋值

    • 方法1:setXxx()方法
    • 方法2:构造方法








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2