新手提问:如何判断一个类被实例化了?

redeastfan 2009-12-04 03:48:59
1、 在调用继承自抽象类的子类的构造函数时,需要先调用抽象父类的构造方法,但抽象类是不能被实例化的。我只是知道调用了构造方法并不代表类被实例化了。那么如何判断一个类是否被实例化,类被实例化的标准是什么?
2、 一个类的初始化顺序是什么?
...全文
200 10 打赏 收藏 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
smartcatiboy 2009-12-04
  • 打赏
  • 举报
回复
用static可以试啊
class CA {
static int count=0;
class CA(){count++;)
}

class CB extends CA{}

xx main(xxx){
CB objB=new CB();
systyem.out.println(CA.count);
}
lengyuelong 2009-12-04
  • 打赏
  • 举报
回复
用输出试试,
你就知道顺序了.
呵呵sysout
iter_jsx 2009-12-04
  • 打赏
  • 举报
回复
从内存分析比较好理解
bunrise 2009-12-04
  • 打赏
  • 举报
回复
父类的东西是没有被实例,内存里面只分配了子类的内存
字类把父亲的东西继承下来了
这是JAVA的多态,
JAVA是这样的机制,至于为什么,
是怎么样的,我就不知道了
我个人只能理解这么多了
smartcatiboy 2009-12-04
  • 打赏
  • 举报
回复
ls的说法我有疑问,如果某个类被重写1000遍,岂不是实例化1000遍。。。这个在效率上实在是木法承认。

我的看法是,即便是super()也只在需要时调用方法,而不是去真的实例
redeastfan 2009-12-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 lxd520123 的回复:]
最简单的他不是null了,就是被实例了
为什么,我不知道

实例顺序由父亲开始,这里不能说是实例,说是分配空间要好点
[/Quote]

那对象实例化能否简单的通过最终有没有用了new来判定?也就是根据有没有为该类分配空间空间来判断么?
bunrise 2009-12-04
  • 打赏
  • 举报
回复
最简单的他不是null了,就是被实例了
为什么,我不知道

实例顺序由父亲开始,这里不能说是实例,说是分配空间要好点
smartcatiboy 2009-12-04
  • 打赏
  • 举报
回复
不是很清楚,但是感觉子类并不实例化父类,编程的时侯看起来是一层套一层,实际只是复用函数方法。
redeastfan 2009-12-04
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 amdgaming 的回复:]
建议 google 加 看书 比较 好。。
[/Quote]

因为是新手,不知道哪本书讲解的较透彻一些,请楼上的给推荐一本,谢谢!
amdgaming 2009-12-04
  • 打赏
  • 举报
回复
建议 google 加 看书 比较 好。。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧