黑马程序员技术交流社区

标题: 为什么要初始化? [打印本页]

作者: 疯疯疯疯疯子    时间: 2015-8-22 08:17
标题: 为什么要初始化?
谁可以告诉我初始化的作用,什么时候要定义初始化函数,什么时候不用,我都搞不懂这个
作者: q943251    时间: 2015-8-22 08:33
静态不用初始化,随着类的 加载和加载!
作者: zhao1991    时间: 2015-8-22 08:37
使用对象前,对象应该处于某种状态,而初始化就是赋予对象某种状态,以便于后续操作
作者: 风扬    时间: 2015-8-22 08:43
初始化就是对对象进行实例化,否则调用对象只能出现默认初始值
作者: kevin986745    时间: 2015-8-22 08:48
初始化就是给一个默认值,不然就会出错!
作者: boboyuwu    时间: 2015-8-22 09:31
你不是你定义初始化函数,而是你在创建对象的时候  由系统自动进行初始化  不初始化 虚拟机怎么知道把那些变量放入内存里面
作者: 径直上漠北    时间: 2015-8-22 15:19
你问的是不是初始化模块。初始化模块和构造方法一起用于初始化对象,如果有多个构造方法共享一段代码,并且每个构造方法不会调用其他构造方法,就可以使用初始化模块来简化类,
//e.g.
public class Book{
     private static int numOfObjects;
     private String title;
     private int id;

     public Book(String title){
          this.title=title;
     }
     
     public Book(int id){
          this.id=id;
     }
     
     {
          numOfObjects++;
     }
}

等价于


public class Book{
     private static int numOfObjects;
     private String tltle;
     private int id;

     public Book(String title){
          numOfObjects++;
          this.title=title;
     }

     public Book(int id){
          numOfObjects++;
          this.id=id;
     }
}   

作者: Liveei    时间: 2015-8-22 19:53
变量是对象的属性,就像一个人有姓名、性别、年龄这样的属性,当你实例化(描述)一个人时,如果你不初始化这个人的姓名、性别、年龄,那么这个人也就是个概念,不是个实际的人




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2