1.判断创建了几个对象:
代码:
public class qwe {
public static void main(String[] args) { ABC ABC1=new ABC(); ABC ABC2=new ABC(); }}class ABC{ static int i; public ABC() { i++; System.out.print("有几个对象?\n"+i+"个\n"); }}截图:
2.动手动脑:
Foo的构造函数有参数,因此Foo obj1=new Foo();也应该有参数。
3.
结果为100和300;
- 执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”。
- 执行类的构造函数。
类的初始化块不接收任何的参数,而且只要一创建类的对象,它们就会被执行。因此,适合于封装那些“对象创建时必须执行的代码”。
3.静态初始化块的顺序:
1)不同类的静态初始化块。
2)同一个类的普通初始化块。
3)同一个类的无参构造器。
4)有参构造器。
4.静态方法中访问类的实例成员
代码:
package text;public class text { public static void main( String args[] ) { Login l=new Login(); System.out.print(i); } }class Login { int i=0; public Login() { } public static void login() { // TODO 自动生成的方法存根 }}实例化对象后可以调用。