作业一 使用类的静态字段和构造函数,可以跟踪某个类所创建对象的个数。请写一个类,在任何时候都可以向它查询“你已经创建了多少个对象?”。
代码 public class TestOne {
protected static int number=0;
private String str;
public TestOne(){
str="find";
number++;
}
public class TestOne_1 extends TestOne{
private String name="xiao";
public void Number() {
int a=number-1;
System.out.println("您已创建了"+a+"个TestOne对象");
}
private String name="xiao";
public void Number() {
int a=number-1;
System.out.println("您已创建了"+a+"个TestOne对象");
}
public static void main(String[] args) {
TestOne a = new TestOne();
TestOne b = new TestOne();
TestOne c = new TestOne();
TestOne d = new TestOne();
TestOne_1 n = new TestOne_1();
n.Number();
}
TestOne a = new TestOne();
TestOne b = new TestOne();
TestOne c = new TestOne();
TestOne d = new TestOne();
TestOne_1 n = new TestOne_1();
n.Number();
}
作业二
动手动脑
1,如何用静态方法访问非静态成员:
一般而言静态方法只能访问静态成员,若想要访问非静态成员,可以在方法中声明一个该类对象然后引用
2,类的初始化和类的结构体谁先:
类的初始化先结构体后
3,若定义的类的结构体是带参数时,声明一个类对象给它分配空间时也要带参数。
4,静态初始化,普通初始化,结构体:
先执行静态初始化顺序按子类到父类的顺序
再是普通初始化顺序也是按子类到父类的顺序
最后才是结构体顺序还是按照子类到父类的顺序。
课件代码截图