动手动脑10.21
一
public class count
{
public static int numb; //numb为类所创建对象的个数
public count()
{
numb ++; //统计个数,每创建一个类 numb++
}
public static int getNumb(int numb)
{
return numb; //返回得到numb的最终的值
}
public static void main (String args[])
{
count a1 = new count();
count a2= new count();//创建对象
System.out.println("创建对象个数是:"+count.getNumb(numb));
}
}
二
public class Test{
public static void main(String[] args) {
Foo obj1=new Foo();
}
}
class Foo{
int value;
public Foo(int initValue) {
value=initValue;
}
}
因为构造函数未定义,newFoo()缺少参数。
三
Java初始化的地方有两个:初始化块和构造函数,其中初始化又分为实例初始化块和静态初始化块,实例初始化块没有关键字修饰,而静态初始化块由static修饰。
执行类成员定义时指定的默认值或类的初始化块,到底执行哪一个要看哪一个“排在前面”
执行类的构造函数:类的初始化块不接收任何的参数,而且只要一创建类的对象,它们就会被执行。因此,适合于封装那些“对象创建时必须执行的代码”。
四
class Exercise{
int a=0;
static int b;
static public int getb(int newb)
{
b=newb;
System.out.println(b);
return b;
}
public int num()
{
int a=1;
return a;
}
}
public class Shi {
public static void main(String[] args){
Exercise e=new Exercise();
e.getb(10);
e.num();
}
}
输出结果 10