美文网首页
第4章 对象与类

第4章 对象与类

作者: KaveeDJ | 来源:发表于2019-06-04 16:19 被阅读0次

    4.1 面向对象程序设计概述

    4.1.1 类

    • 类(class)是构造对象的模板或蓝图
    • 封装不过是将数据和行为组合在一个包中

    4.1.2 对象

    4.1.3 识别类

    • 名词与动词

    4.1.4 类之间的关系

    • 依赖:uses-a
    • 聚合:has-a
    • 继承:is-a

    4.2 使用预定义类

    4.2.1 对象与对象变量

    • 局部变量不会自动地初始化为null,而必须通过调用new或将它们设置为null进行初始化。

    4.2.2 Java类库中的LocalDate类

    • Date类:用来表示时间点
    • LocalDate:用来表示大家熟悉的日历表示法

    4.2.3 更改器方法与访问器方法

    4.3 用户自定义类

    4.3.1 Employee类

    4.3.2 多个源文件的使用

    4.3.3 剖析Employee类

    • 构造器总是伴随着new操作符的执行被调用

    4.3.5 隐式参数和显式参数

    • 方法前面是隐式参数,方法后面是显式参数
    • this代表隐式参数,即调用方法的对象

    4.3.6封装的优点

    • 更改器方法可以执行错误检查,然而直接对域进行赋值将不会进行这些处理。
    • 不要编写返回引用可变对象的访问器方法
    • 如果需要返回一个可变对象的引用,应该首先对它进行克隆clone

    4.3.7 基于类的访问权限

    4.3.8 私有方法

    4.3.9 final实例域

    • final表示只有一次建立引用的机会,但引用的对象是可以更改的

    4.4 静态域与静态方法

    4.4.1 静态域

    • 每一个对象都拥有实例域的一份拷贝

    4.4.2 静态常量

    4.4.3 静态方法

    • 类直接调用,没有隐式参数
    • 对象也可以调用静态方法,不过,不建议这么使用

    4.4.4 工厂方法

    • 本质上就是对new方法的封装

    4.4.5 main方法

    4.5 方法参数

    • Java程序设计语言总是采用按值调用,方法得到的是参数值的拷贝,方法不能改变参数变量的内容
    • Java是直接访问,不存在间接访问
    • 一个方法可以改变一个对象参数的状态
    • 一个方法不能让对象参数引用一个新的对象

    4.6 对象构造

    4.6.1 重载

    • 相同的名字,不同的参数
    • 返回类型不是方法签名的一部分

    4.6.2 默认域初始化

    4.6.3 无参数的构造器

    • 域会自己设置默认值,但局部变量,必须手动赋初始值

    4.6.4 显示域初始化

    • 在类定义中,直接将一个值赋给任何域。
    • 在声明中赋值
    • 初始化块

    4.6.5 参数名

    • this.name = name

    4.6.6 调用另一个构造器

    • this

    4.6.7 初始化块

    • 对象初始化块在构造器之前执行
    • 调用构造器的具体处理步骤:
      1 所有数据域初始化为默认值
      2 按照在类声明中出现的次序,依次执行所有域初始化语句和初始化块
      3 如果用this调用其他的构造器,则先调用另外的构造器
      4 最后调用本构造器的剩余代码
    • 对类的静态域进行初始化,可以使用静态代码块

    4.6.8 对象析构与finalize方法

    4.7 包

    4.7.1 类的导入

    4.7.2 静态导入

    • import语句不仅可以导入类,还增加了导入静态方法和静态域的功能

    4.7.3 将类放入包中

    • 如果包与目录不匹配,虚拟机就找不到类

    4.7.4 包作用域

    4.8 类路径

    • classpath:一般就设置为. 代表当前目录

    4.9 文档注释

    • javadoc

    4.9.1 注释的插入

    4.9.2 类注释

    4.9.3 方法注释

    4.9.4 域注释

    • 只需要对公有域建立文档,通常是静态常量

    4.9.5 通用注释

    4.9.6 包与概述注释

    4.9.7 注释的抽取

    4.10 类设计技巧

    • 优先使用不可变对象,这样可以避免多线程的并发修改异常。

    相关文章

      网友评论

          本文标题:第4章 对象与类

          本文链接:https://www.haomeiwen.com/subject/rkvlxctx.html