18.1.16

Float

  定义整数时,后面不跟f或F是不会报错的。

  例:float  f = 1;//编译是不会报错

  定义小数时,后面不跟f或F是会报错的。

  例:float f = 1.0;//编译会报错

Static 关键字

  遇到的一些题:

public class Test extends Base
{
	static
	{
		System.out.println("test static");
	}
	
	public Test()
	{
		System.out.println("test constructor");
	}
	
	public static void main(String[] args)
	{
		new Test();
	}
}

class Base
{
	static
	{
		System.out.println("base static");
	}
	
	public Base()
	{
		System.out.println("base constructor");
	}
}

   执行结果:

    base static 

    test static

    base constructor

    test constructor

  解释:

    加载Test类时,发现test 是继承Base的,所以先加载Base类,此时运行Base 类的static 代码块,然后加载Test 类,运行它的static 代码块。

    new Test() 时,先运行的是父类的 构造器,再运行自己的构造器。

  延伸:

    如果类中有成员变量,成员变量的初始化会先于构造函数。

posted @ 2018-01-18 12:30  always1024ccnn  阅读(111)  评论(0编辑  收藏  举报