构造函数是否为static

X元素 2015-06-19 01:43:15
Thinking in Java 关于多态与构造函数一节提到,类的构造函数不具有多态性(隐式static),存在以下几点疑虑。
1.如果构造函数为static ,却可以 this.X = null;
2.class 文件中 构造函数的指令集不是已static方法被运行;
求解答。
...全文
449 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
youshu2011 2015-07-04
  • 打赏
  • 举报
回复
既然叫隐式static那就不能用static的思想来理解了吧。
alan19931103 2015-06-20
  • 打赏
  • 举报
回复
请继续往后看,大概看到“运行时状态”附近的一两章就可以了
X元素 2015-06-19
  • 打赏
  • 举报
回复
引用 1 楼 jc890904 的回复:
1. 构造函数不是static,最多只能用特殊的静态方法来理解构造函数,因为它不用对象的实例也能调用。 2. Java中静态的东西都是属于类的,为类服务,构造函数是为了初始化对象,为对象服务。 3. 初学者不建议看 Thinking in Java,会越学越菜的。
Thinking in Java 第四版 292页中写: 尽管构造器并不具有多态性(他们实际上是static方法,只不过该static声明是隐式的)。 jvm指令集中关于构造函数也不是static的。 我个人也觉得构造器应该跟对象绑定应该是运行时解析,难道是书里写错了?
傻傻de点点 2015-06-19
  • 打赏
  • 举报
回复
1. 构造函数不是static,最多只能用特殊的静态方法来理解构造函数,因为它不用对象的实例也能调用。 2. Java中静态的东西都是属于类的,为类服务,构造函数是为了初始化对象,为对象服务。 3. 初学者不建议看 Thinking in Java,会越学越菜的。

62,614

社区成员

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

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