一个关于class类声明的一个问题??请各位帮个忙。

郎虹 2003-11-20 10:58:37
class类声明如下:
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import javax.swing.*;
import javax.swing.event.*;
public class WebToolBar extends JToolBar implements HyperlinkListener{
}
在这段声明中 implements HyperlinkListener的起到什么作用??
...全文
42 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hyhu 2003-11-20
  • 打赏
  • 举报
回复
你本身的class WebToolBar就是一个监听借口的实现!add的是这个类的本身,也就是说add的是你的类本身,在事件被触发时会执行hyperlinkUpdate函数,你如果删除impl.......的话,你没有实现借口,add listner就不能add this,编译就会报错!
Stvan 2003-11-20
  • 打赏
  • 举报
回复
指向的是public void hyperlinkUpdate(HyperlinkEvent event)方法
这个类声明中声明implements HyperlinkListener有作用
不可删除,
它重载了HyperlinkListener中的hyperlinkUpdate(HyperlinkEvent event)方法
郎虹 2003-11-20
  • 打赏
  • 举报
回复
楼上的兄弟我再问一下:
public class WebToolBar extends JToolBar implements HyperlinkListener
{
private WebBrowserPane webBrowserPane;
//WebBrowserPane始自定义的一个继承自JEditorPane
private JButton backButton,forwardButton;
private JTextField urlTextField;
public WebToolBar(WebBrowserPane browser)
{
super("Web Navigation");
webBrowserPane=browser;
webBrowserPane.addHyperlinkListener(this);
}

public void hyperlinkUpdate(HyperlinkEvent event)
{
if(event.getEventType()==HyperlinkEvent.EventType.ACTIVATED)
{
URL url=event.getURL();
webBrowserPane.goToURL(url);
urlTextField.setText(url.toString());
}
}
在这段程序中webBrowserPane.addHyperlinkListener(this);指向的是public void hyperlinkUpdate(HyperlinkEvent event)方法吗??
还有在这个类声明中声明implements HyperlinkListener有作用吗?可以删除否??
kjah 2003-11-20
  • 打赏
  • 举报
回复
实现超链接监听接口~
疾风2002 2003-11-20
  • 打赏
  • 举报
回复
你上面用内部匿名类实现当然也是可以的!
郎虹 2003-11-20
  • 打赏
  • 举报
回复
两位大侠如果我将implements HyperlinkListener声明去掉该程序段是否可改为:
public class WebToolBar extends JToolBar
{
private WebBrowserPane webBrowserPane;
//WebBrowserPane始自定义的一个继承自JEditorPane
private JButton backButton,forwardButton;
private JTextField urlTextField;
public WebToolBar(WebBrowserPane browser)
{
super("Web Navigation");
webBrowserPane=browser;
webBrowserPane.addHyperlinkListener
(
new HyperlinkListener()
{
public void hyperlinkUpdate(HyperlinkEvent event)
{
if(event.getEventType()=HyperlinkEvent.EventType.ACTIVATED)
{
URL url=event.getURL();
webBrowserPane.goToURL(url);
urlTextField.setText(url.toString());
}
}
}
);
}
}

62,612

社区成员

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

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