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() 时,先运行的是父类的 构造器,再运行自己的构造器。
延伸:
如果类中有成员变量,成员变量的初始化会先于构造函数。