class AA { static private AA dat; //这里怎么初始化???? public AA(AA obj) { dat = obj; //与它自己调用生成的对象 与 dat 有什么区别?? } } 静态私有当然是所有类实例共有了,但是不能访问,需要公共方法才行。 public AA(AA obj)方法中的那个obj,应该是继承了AA的子类实例。 这种是接口编程的样式,但是没有采用接口,采用了类代替。
这个不难理解啊 最简单的就是String str = new String("123"); "123"是个String 你拿他做参数再去构造一个String实例啊
这不就和set方法一个概念嘛...
就是有个类A a是A的实例 然后拿a去构造另一个实例b 懂了么?
静态初始化的时候初始化为null。 你实际创建对象,调用构造方法时才给它制定具体的值。
这有什么不好理解的String str = new String("llddfd");还不是一样?static private AA dat; //这里怎么初始化???? 这行是错误的
[color=#FF0000][/static private AA dat; //这里怎么初始化???? 这行是错误的color]楼上的看法是错误的.........
static private AA dat; // 初始化静态私有 类实例 dat,为空 public AA(AA obj) { dat = obj; // 与它自己调用生成的对象 与 dat 有什么区别?? // 这里是构造函数,把传来的obj对象赋给dat, // 它自己调用生成的对象与dat区别就是:dat是静态私有的类实例,而obj是AA一个普通的对象 }
{
static private AA dat; //这里怎么初始化????
public AA(AA obj)
{
dat = obj; //与它自己调用生成的对象 与 dat 有什么区别??
}
}
静态私有当然是所有类实例共有了,但是不能访问,需要公共方法才行。
public AA(AA obj)方法中的那个obj,应该是继承了AA的子类实例。
这种是接口编程的样式,但是没有采用接口,采用了类代替。
你实际创建对象,调用构造方法时才给它制定具体的值。
这行是错误的
这行是错误的color]楼上的看法是错误的.........
static private AA dat; // 初始化静态私有 类实例 dat,为空
public AA(AA obj)
{
dat = obj; // 与它自己调用生成的对象 与 dat 有什么区别??
// 这里是构造函数,把传来的obj对象赋给dat,
// 它自己调用生成的对象与dat区别就是:dat是静态私有的类实例,而obj是AA一个普通的对象
}
个人至少要带个无参的构造方法吧