java课堂 动手动脑3

1java

 

 

该函数没有赋初值再就是若是类提供一个自定义的构造方法,将致使系统不在提供默认的构造方法。函数

2this

public class test spa

{对象

          public static void main(String[] args) blog

          {get

                 // TODO Auto-generated method stubit

                InitializeBlockClass obj=new InitializeBlockClass();class

                System.out.println(obj.field);test

                obj=new InitializeBlockClass(300);

                System.out.println(obj.field);

           }

  }

class InitializeBlockClass

{

      {field=200;}

      public int field=100;

      public InitializeBlockClass(int value){this.field=value;}

      public InitializeBlockClass(){}

}

java字段的全部类的变量都默认初始化为null,好比String a; Integer b;

数字类的原始数据类型默认初始化为0,好比int a; short b; char c;

boolean默认初始化为false。执行类成员定义时指定的默认值或类的初始化模块到底执行那一个,要看哪个在排在前面

2,:执行类的构造函数

3:类的初始化块不接受任何的参数,并且只要一创见类的对象,它们就会被执行。所以,适合于封装那些“对象建立时必须执行的代码”

静态初始化模块的执行顺序:

答:静态初始化块只能执行一次,建立子类对象时也致使父类型的静态初始化块也执行一次。

3)静态方法中访问类的实例成员

例子:

public class ButtonFactory

 {

           private static ButtonFactory _instance = null;

           public static  ButtonFactory getInstance()

        {

              if(null == _instance)

              _instance = new ButtonFactory();

              return _instance;

        }

}

使用类的静态类和构造函数,咱们能够跟踪某个类所建立的个数。请写一个类在任什么时候候均可以查询本身已经建立了多少对象

实例:

public class Objictnumber

{

      int number;

      public Objictnumber()

     {

            ++number;

            System.out.println("目前建立了"+number+"个对象");

     }

     public static void main(String[]args)

    {

         @SuppressWarnings("unused")

         Objictnumber obj=new Objictnumber();

     }

 }

相关文章
相关标签/搜索