求助大神.这个php 执行父类构造函数数为什么会执行两次

【自学新手求助于大神】我没用无参构造方法啊??【java吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:643,419贴子:
【自学新手求助于大神】我没用无参构造方法啊??收藏
import java.awt.*;import java.awt.event.*;public class dlog{ public static void main(String [] args) {
new TestDialog(); }}class TestDialog extends Frame//主窗口{ MyWin mw=new MyWin(); BtnOne bo=new BtnOne(); BtnTwo bt=new BtnTwo(); TextField tf=new TextField(); Button b1=new Button(&model&); Button b2=new Button(&modeless&); public TestDialog() {
setTitle(&test dialog&);
setBounds(300,300,500,400);
add(tf,&North&);
add(b1,&Center&);
add(b2,&East&);
setVisible(true);
bo.setFrame(this);
bt.setFrame(this);
b1.addActionListener(bo);
b1.addActionListener(bt);
addWindowListener(mw); } public TextField getTextField() { }}class MyDialog extends Dialog//子窗口{ TestDialog td= MyWin mw=new MyWin(); BtnUse bu=new BtnUse(); BtnOk bo=new BtnOk(); TextField tf=new TextField(); Button b1=new Button(&use&); Button b2=new Button(&ok&); public MyDialog(Frame owner,String title,boolean modal)//编译提示错误出处 {
td=(TestDialog)
setSize(350,200);
bu.setInfo(td,this);
bo.setInfo(td,this);
add(tf,&North&);
add(b1,&Center&);
if(b)b1.setEnabled(false);
else b1.addActionListener(bu);
add(b2,&East&);
b2.addActionListener(bo);
setVisible(true);
addWindowListener(mw);//忽略,不按他 } public TextField getTextField() { }}class BtnUse implements ActionListener//子窗口按钮1,提取主窗口文本{ TestDialog td= MyDialog md= String str= public void actionPerformed(ActionEvent e) {
str=td.getTextField().getText();
md.getTextField().setText(str); } public void setInfo(TestDialog td,MyDialog md) {
this.md= }}class BtnOk implements ActionListener//子窗口按钮2,复制子窗口文本至主窗口文本{ TestDialog td= MyDialog md= String str= public void actionPerformed(ActionEvent e) {
str=md.getTextField().getText();
td.getTextField().setText(str);
md.dispose(); } public void setInfo(TestDialog td,MyDialog md) {
this.md= }}class BtnOne implements ActionListener//主窗口按钮1,打开模态对话框{ TestDialog td= MyDialog dl= public void actionPerformed(ActionEvent e) {
dl=new MyDialog(td,&model&,true);//构造1 } public void setFrame(TestDialog td) {
this.td= }}class BtnTwo implements ActionListener//主窗口按钮2,打开非模态对话框{ TestDialog td= MyDialog dl= public void actionPerformed(ActionEvent e) {
dl=new MyDialog(td,&modeless&,false);//构造2,没了 } public void setFrame(TestDialog td) {
this.td= }}class MyWin extends WindowAdapter{ public void windowClosing(WindowEvent e) {
e.getWindow().dispose();
System.exit(0); }}
java培训选甲骨文,4个月学习,上万家就业合作企业任你选,1-2年工作经验,月薪上万起,人才缺口上百万.找份好工作,拿满意工资.
如果子类没有调用父类的构造方法,那么编译器会自动在子类的构造方法前加一句:super()。但是父类Dialog并没有无参数构造方法,所以就提示出错。这种情况必须手动在子类调用父类的带参数构造方法,而且必须写在子类构造方法的第一行。super(owner, title, modal);加这一句就OK
登录百度帐号推荐应用问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
function MyClass() {
console.log('Initialized!');
//Set a property, as an example
this.dirty =
var instance = new MyC
MyClass 会被执行 控制台会有输出
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
new 这个关键字 在c++/java/javascript里被用来创建新的对象实例, 一般来说, 它做如下两件事:
1. 给 对象实例 分配内存(堆中?);
2. 调用 构造函数 初始化 1中返回的内存.
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
有些大侠们,总结了下 new+构造函数 至少做了4件事,基本思路如下:
这样按照第三点来说的话,会有MyClass.call(obj)发生,所以会执行Myclass().
// new Base();
// 1.创建一个空对象 obj
var obj = {};
// 2.设置obj的proto为原型
obj.proto = Base.
// 3.使用obj作为上下文调用Base函数
var ret = Base.call(obj);
// 4.如果构造函数返回的是原始值,那么这个返回值会被忽略,如果返回的是对象,就会覆盖构造的实例
if(typeof ret == 'object'){
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
new 关键字实际上就是调用了 MyClass 这个函数并返回 this 指针 .
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
首先Myclass是一个函数,当你使用new关键字的时候Myclass被当做了构造函数:当MyClass中包含return的时候 且return的是一个对象而不是number这样的值,则会返回return后的对象,return后不是对象,则被忽略,返回的是Myclass中的this对象。
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
new 解释执行的时候,首先会先创建一个空的functon object对象,然后这个创建好的对象再去解析MyClass的函数体,就会在其中为那个空的函数对象做初始化,这时候this指的就是你新创建的js函数对象。
同步到新浪微博
分享到微博?
Hi,欢迎来到 SegmentFault 技术社区!⊙▽⊙ 在这里,你可以提出编程相关的疑惑,关注感兴趣的问题,对认可的回答投赞同票;大家会帮你解决编程的问题,和你探讨技术更新,为你的回答投上赞同票。
明天提醒我
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:鍙?渶涓

我要回帖

更多关于 构造函数 的文章

 

随机推荐