• head first java 02 ( 4 ~ 5 章 )


    - 类所描述的是对象知道什么与执行什么, 任意类得每个实例都带有相同的方法, 但是方法可以根据实例变量的值来表现不同的行为。

      知道什么: 实例变量, 执行什么: 方法. 例如:

    一个方法执行不同

    - 参数传递的真谛

      Java 是通过传值传递的, 也就是说通过拷贝传递.

      image

      image

      image
      image

      注意: 引用类型也是一样, 传递的拷贝, 只不过因为它是指针, 是间接的, 所以才会出现在函数内修改也会影响到函数外.

      方法只能返回一个值, 如果你想返回多个就要用到数组, 如果是同类型的就用普通数组, 如果是不同类型的, 要用 arraylist.

    - 封装

      类似, cat.height = 27; 这种直接修改实例变量, 有什么不妥呢? 比如 cat.height = 0; 这是一个严重的逻辑错误, 但是没有办法,

      你准许别人这样修改. 如果调用 setter方法, 就没关系, 因为可以增加逻辑判断, 使该值在合理的范围以内.

      原则: 将你的实例变量标记为私有的, 并提供getter, setter方法来控制存取.

      备注: 有些变量在 setter中什么也没限制, 是不是增加负担? 这样做还是有好处的, 就是在将来你想增加这个实例变量的设置时, 哈哈,

      只要在 setter 中增加就可以了.

    - 所有实例变量都有默认值

      integer 0

      float 0.0

      boolean false

      reference null

    - 实例变量与局部变量差别

      实例变量声明在类内而不是方法中

      局部变量没有默认值, 必须要初始化

    - 变量的比较, 包括reference类型

      基本变量比较是否相等: ==

    imageimage

      refernence是否指向同一个堆: ==

    image

      reference指向的堆的值是否相等: equals(), 即这两个对象是否在意义上相等.


    - 问题求解步骤 ( 游戏为例 )

     image  

     imageimage

     image

      简化版游戏: 只是横排的达康公司…

      开发类得过程:

    • 找出类应该做的事情
    • 列出实例变量和方法
    • 编写方法伪码 ( 帮助你专注逻辑而不需要顾虑到程序语法 )
    • 编写方法测试程序
    • 实现类
    • 测试方法
    • 除错或重新设计
    • 邀请辣妹参加庆功派对

      1. 伪码设计:

      image

      说明实例变量用途: 大致逻辑上实现方法. ( 高手基本上可以不用了, 直接编码 )

      2. 编写测试代码: 来自极限编程(XP)

      即编写一个类, 带main方法, 并调用刚刚创建的对象, 思索该对象中那些地方需要测试, 思索的过程中, 就会对这个类有个更深刻的认识.

      3. 真实码

    - for 循环

      从 java 5.0(Tiger)开始, java提供加强版得for循环, 它能够很容易的逐个运行数组或其他集合(collection)的元素.

      for( String name: nameArray) {} 其中String 是指数组元素类型,必须与循环变量类型一致. 另外中间是 冒号: 而不是分号;

      nameArray: 必须是对数组或其他集合的引用(reference).

    - 以上小游戏的 Java 源码

    GameTest
    Game
    Player
    Dao

      类得结构

     image

  • 相关阅读:
    方法的形式参数是类名的时候如何调用
    成员变量与局部变量的区别
    如何选择适合自己的Linux版本
    MySQL数据库的特点和优势
    面向对象学生类和手机类的使用
    面向对象基本概述
    数据库概念介绍
    二位数组的求和
    二维数组遍历
    SpringBoot与SpringMVC的区别是什么?
  • 原文地址:https://www.cnblogs.com/moveofgod/p/2999098.html
Copyright © 2020-2023  润新知