java 温故知新 第六天 构造方法

构造方法

  • 构造方法的方法名跟类名相同,在创建对象的时候给对象数据初始化,
  • 构造函数无返回值类型,方法体中可以在末尾处加return,但不起作用。
  • 构造方法的重载:如果类没有定义构造器,系统会默认给一个无参构造器。一个类可以定义多个构造器,只要参数个数或参数类型不同就行。调用的时候,根据新建对象传递的参数来选择构造器。
  • 构造方法做的事情,都可以通过set方法完成。

新建对象的步骤(内存)

  1. Student的class文件加载进内存

  2. 声明一个Student的类型引用 s

  3. 在堆内存中创建对象

  4. 给对象中的成员变量做默认初始化

  5. 给对象中的成员变量做显示初始化

  6. 调用构造器给对象中的成员变量赋值

  7. 将对象的地址赋值给 s

  8. 通过s调用对象的方法或属性(coder可感知)

  9. 内存图如下


    java 温故知新 第六天 构造方法_第1张图片
    s2.png

静态

  1. 静态的元素优先于对象存在。共性用静态,特性用非静态
  1. 静态可以被对象和类名调用,推荐用类名调用。静态变量叫类变量,静态方法叫类方法
  2. 静态元素和非静态元素在运行的时候都会先加载到方法区,但是非静态的是不能直接被使用的,必须先被实例化为对象,才能使用。而静态元素的可以直接使用。

主方法

public static void main(String [ ] args)
  • 为什么是public? main方法想要直接被JVM调用,权限需要足够大
  • 为什么是static? main方法想要被JVM调用,不需要创建对象,直接类名调用
  • 为什么是void? main方法被JVM调用,返回值给谁用了?
  • String [ ] 用语键盘录入的,键盘录入什么参数,输出什么参数,
  • 整个名称只有args这个名称可以被更改,其他都不能进行改动。
  • String[ ] args 的键盘录入如图所示


    java 温故知新 第六天 构造方法_第2张图片
    s3.png

工具类

如果所有的方法都是静态的,最好在类里面加一个私有的无参构造。

静态方法被调用有两种形式,一种是通过实例调用,一种是通过类名调用,建议的是使用类名调用。当所有的方法都是静态的时候,这个类就无须再实例化了,使用私有构造可阻止类的实例化。

文档说明书制作

  • javadoc -d 生成文件的目录 -author -version name.java
  • 首先是类是a public/protected b 方法是public/protected 先有a再有b
  • eclipse IDE能很方便的为整个项目生成文档

你可能感兴趣的:(java 温故知新 第六天 构造方法)