java基础学习_面向对象(上)03_day08总结

=============================================================================
=============================================================================
涉及到的知识点有:
  0:前面学习通过方法对代码进行改进,为什么要给方法使用静态呢?
  1:Java如何制作帮助文档(API)(了解)
  2:通过JDK提供的帮助文档(API)学习了Math类(掌握)
  3:Java中的代码块(理解)
=============================================================================
=============================================================================
0:前面学习通过方法对代码进行改进,为什么要给方法使用静态呢?
    答:因为main方法是静态的,而静态方法只能访问静态的成员变量和静态的成员方法。
      所以之前我们的方法是使用静态来修饰的,即静态的方法。
  如果我们把static去掉呢?即该如何调用非静态的方法呢?
    答:通过创建对象,使用对象进行调用啊!

  测试类的作用是什么?
    答:创建其他类的对象,调用其他类的功能。

    在同一个文件夹下,Java的类定义在两个文件中和定义在一个文件中其实是一样的。
---------------------------------------
  工具类中的方法使用静态修饰后,又让外界不能通过创建对象方式去访问该方法,只能通过工具类名来访问该方法,该如何办呢?
    答:把工具类中的构造方法私有即可。
如下图所示01:


-----------------------------------------------------------------------------
1:Java如何制作帮助文档(API)(了解)
  步骤如下:
    (1)写一个工具类
    (2)对这个类加入文档注释
    (3)用工具解析文档注释
      javadoc工具
    (4)格式
      javadoc -d 目录 -author -version ArrayTool.java

    制作帮助文档(API)出错问题解决:
      找不到可以文档化的公共或受保护的类
        这句话告诉我们对想要操作的类的权限不够。在类前面加上public即可。
如下图所示02:


---------------------------------------
  将来做开发的时候,我们给别人的东西就是Xxx.class文件和帮助文档(API)。别人通过帮助文档(API)来使用Xxx.class文件。
  这就是面向对象思想,我才不管你是怎们实现的呢!我满足你的条件会用就可以。
-----------------------------------------------------------------------------
2:通过JDK提供的帮助文档(API)学习了Math类(掌握)
  (1)API(Application Programming Interface)
    应用程序编程接口(帮助文档)
  (2)如何使用帮助文档(API)呢?
    1:打开帮助文档
    2:点击显示,找到索引,看到输入框
    3:知道你要找谁?以Scanner举例
    4:在输入框里面输入Scanner,然后回车
    5:第一步:看包
      java.lang包下的类不需要导入,其他的全部需要导入。

      要导入:
      java.util.Scanner
    6:再简单的看看该类的解释说明和例子,别忘了看看该类的版本。
    7:看类的结构:
      成员变量  字段摘要
      构造方法  构造方法摘要
      成员方法  方法摘要
    8:学习构造方法的两种情况:
      A:有构造方法 就创建该类的对象,通过对象调用。
      B:没有构造方法 该类的成员变量和成员方法可能都是静态的,通过类名调用。
    9:看成员方法:
      A:看左边
        看是否是静态的成员方法:如果是静态,可以通过类名调用。
        看返回值类型:人家返回什么,你就用什么接收。
      B:看右边
        看方法名:方法名称不要写错了。
        看参数列表:人家要什么参数,你就给什么参数;人家要几个参数,你就给几个参数。
  (3)API中的Math类的示范使用
    A:是针对数学执行基本运算进行操作的类。
    B:没有构造方法,因为它的成员都是静态的。
    C:产生随机数:
      public static double random()
        返回值为double的正值,大于等于0.0 ,小于1.0。即:[0.0, 1.0)
        返回的值是从该范围(大约)均匀分布的伪随机选择的。
    D:如何产生一个1~100([1, 100])之间的随机数?
      int number = (int)(Math.random() * 100) + 1;
    E:猜数字小游戏。
-----------------------------------------------------------------------------
3:Java中的代码块(理解)
  (1)在Java中用{}括起来的代码。
  (2)代码块分类:(根据其位置和声明的不同)
    A:局部代码块
      在方法定义中,用于限定变量的生命周期,及早释放,提高内存利用率。
    B:构造代码块
      在类中方法外出现(即在类中的成员位置),可以把多个构造方法方法中相同的代码存放到一起,用于对对象进行初始化,每次调用构造方法都执行,并且在构造方法前执行。
    C:静态代码块
      在类中方法外出现(即在类中的成员位置),并加上static修饰,用于对类进行初始化,静态在类加载的时候就执行了,并且只执行一次。
    D:同步代码块
      多线程部分讲解。
  (3)面试题:
    静态代码块、构造代码块、构造方法的执行顺序问题?
    静态代码块    >   构造代码块   >    构造方法
    只执行一次    每次调用构造方法都执行
  (4)代码块练习题:
    看代码写程序的执行结果。
=============================================================================

posted @ 2018-02-14 22:38  黑泽君  阅读(186)  评论(0编辑  收藏  举报