美文网首页
对象与类

对象与类

作者: chenyq1989 | 来源:发表于2017-07-30 11:02 被阅读0次

    面向对象程序设计概述

    • OOP
    • 结构化过程化程序设计
    • 对象
    • 类构造对象的过程称为创建类的实例
    • 封装
    • 实例域
    • 方法
    • 对象状态
    • 实现封装的关键在于绝不让类中的方法直接方位其他类的实例域
    • 继承
    • 对象
    • 对象的行为
    • 对象的状态
    • 对象标识
    • 识别类
    • 类之间的关系
    1. 依赖(use-a)
    2. 聚合(has-a)
    3. 继承(is-a)
    • 类之间的关系及UML符号

    使用预定义类

    • 对象与对象变量
    • LocalDate类
    • 更改器方法和访问器方法

    自定义类

    • 构造器
    • 隐式参数,显示参数
    • 封装的优点
    • 基于类的访问权限
    • 私有方法
    • final实例域

    静态域,静态方法

    • 静态域
    • 静态常量
    • 静态方法
    • 工厂方法
    • main方法

    方法参数

    • 按值调用(Java使用)
    • 按引用调用
    • 参数类型
    1. 基本数据类型
    2. 对象引用

    对象构造

    • 重载
    • 默认域初始化

    域将被默认初始化,但局部变量必须明确初始化

    • 无参数构造器
    • 显示域初始化(在执行构造器之间赋值)
    • 参数名
    • 调用另一个构造器(this(...))
    • 初始化块

    调用构造器的具体步骤

    1. 所有数据域被默认初始化
    2. 按照在类的声明中的顺序依次执行域初始化和块初始化
    3. 如果构造器第一行调用了第二个构造器,则执行第二个构造器
    4. 执行这个构造器主体

    静态初始化块将在类被加载时执行

    • 对象析构与finalize方法

    不要依赖finalize方法释放短缺资源,该方法由垃圾回收器执行

    包用于将类组织起来

    • 导入类
    • 静态导入
    • 将类放入包中
    • 包作用域

    类路径

    1. 文件系统子目录
    2. Jar包
    • 类路径之间用分号:相隔
    • javac编译器总是在当前路径查找文件
    • Java虚拟机如果未指定类路径,包含当前目录,如果指定了类路径,必须显示包含当前目录(.)才包含当前目录
    • 设置类路径
    1. 命令选项
    java -classpath /home/chenyq/classdir:.:/home/usr/archives/archives.jar Test
    
    1. CLASSPATH环境变量
    #Linux
    export CLASSPATH=/home/chenyq/classdir:.:/home/usr/archives/archives.jar
    #Windows
    set CLASSPATH=C:\classdir:.:C:\archives\archives.jar
    

    文档注释

    • javadoc程序
    • 应该为包,公有类与接口,共有的和受保护的构造器和方法,公有和受保护的域
    • 类注释
    • 方法注释
    • 域注释
    • 通用注释
    1. @author
    2. @version
    3. @since
    4. @deprecated
    5. @see
    • 包与概述注释
    • 注释抽取

    javadoc -d docDir packageDir

    类设计技巧

    • 一定要保证数据私有
    • 一定要对数据进行初始化
    • 不要在类中使用过多的基本类型
    • 不是所有的域都需要独立的域访问器和域更改器
    • 将职责过多的类进行分解
    • 类名和方法名要能够体现他们的职责
    • 有限使用不可变的类

    相关文章

      网友评论

          本文标题:对象与类

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