码迷,mamicode.com
首页 > 编程语言 > 详细

java的动手动脑10月20日

时间:2016-10-20 21:45:11      阅读:148      评论:0      收藏:0      [点我收藏+]

标签:

(1)动手动脑

技术分享

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

(2)

public class test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
InitializeBlockClass obj=new InitializeBlockClass();
System.out.println(obj.field);//?

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)
执行结果:
技术分享
静态初始化模块的执行顺序:
答:静态初始化块只能执行一次,创建子类对象时也导致父类型的
静态初始化块也执行一次。
(3)静态方法中访问类的实例成员
例子:
public class ButtonFactory {
private static ButtonFactory _instance = null;
public static  ButtonFactory getInstance()
{
    if(null == _instance)
    _instance = new ButtonFactory();
    return _instance;
}
}
(4)Integer的诡异性
技术分享
技术分享
(5)
使用类的静态类和构造函数,我们可以跟踪某个类所创建的个数。请写一个类在任何时候都可以查询自己已经创建了多少对象
实例:

public class Objictnumber {

 int number;

      public Objictnumber()

   {

        ++number;

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


   }

   public static void main(String[]args)

  {

      @SuppressWarnings("unused")

  Objictnumber obj=new Objictnumber();


}

}

 

 

 

 



 

java的动手动脑10月20日

标签:

原文地址:http://www.cnblogs.com/janson666/p/5982264.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!