2013-03-22 73 views
-2

這段代碼的問題是,每當我運行這個它顯示了對象作爲參數,爲什麼不能我們聲明的類,而不是

編譯錯誤 -

「找不到符號內通過mywindowadapter(幀1)

位置:類mywindowadapter mywindowadapter MWA =新mywindowadapter()」

import java.awt.*; 
import java.awt.event.*; 
/*<applet code=frame2 width=500 height=500> 
</applet>*/ 
class frame2 extends Frame 
{ 
    frame2(String title) 
    { 
     super(title); 
     mywindowadapter mwa=new mywindowadapter(); 
     addWindowListener(mwa);  
    } 
    public static void main(String ar[]) 
    { 
     frame1 f=new frame1("my frame"); 
     f.setVisible(true); 
     f.setSize(200,100); 

    } 
    public void paint(Graphics g) 
    { 
    g.drawString("hello frame",60,70); 
    } 
} 
class mywindowadapter extends WindowAdapter 
{ 

    mywindowadapter() 
    { 
     frame2 f=new frame2(); 
    } 
    public void windowClosing(WindowEvent we) 
    { 
     f.setVisible(false); 
     System.exit(0); 
    } 
} 

以下代碼是上述代碼的修正版本。我無法理解在前面的代碼中產生的錯誤。請幫忙!!

import java.awt.*; 
import java.awt.event.*; 
/*<applet code=frame1 width=500 height=500> 
</applet>*/ 
class frame1 extends Frame 
{ 
    frame1(String title) 
    { 
     super(title); 
     mywindowadapter mwa=new mywindowadapter(this); 
     addWindowListener(mwa);  
    } 
    public static void main(String ar[]) 
    { 
     frame1 f=new frame1("my frame"); 
     f.setVisible(true); 
     f.setSize(200,100); 

    } 
    public void paint(Graphics g) 
    { 
     g.drawString("hello frame",60,70); 
    } 
} 
class mywindowadapter extends WindowAdapter 
{ 
    frame1 f; 
    mywindowadapter(frame1 f) 
    { 
     this.f=f; 
    } 
    public void windowClosing(WindowEvent we) 
    { 
     f.setVisible(false); 
     System.exit(0); 
    } 
} 
+2

那麼在你的代碼中有一堆語法錯誤,這只是一個複製過去的問題?你能詳細說明「爲什麼我們不能簡單地在下面的類中聲明對象,而不是將它作爲參數傳遞。」給我錯誤的確切代碼。 – 2013-03-22 19:09:07

+2

代碼是顯示你正在嘗試做什麼(併產生錯誤)在上面張貼?如果是這樣,在哪裏?另外,有什麼錯誤?你粘貼的代碼確實有幾個語法錯誤。 – jedwards 2013-03-22 19:12:37

回答

0

因爲在構造函數中frame1你想利用的Adapter pattern和代表處理事件的適配者frame1其中引用您作爲參數傳遞給創建一個適配器實例。此適配器由您添加到frame1的偵聽器列表中的偵聽器使用。

+0

抱歉,請你用寬鬆的詞語解釋以上內容...... – 2013-03-23 07:44:08

相關問題