java監聽com口_簡單了解Java接口+事件監聽機制

1.接口:

定義方法:

public interface interName //extends interName2, interName3...可繼承多個接口

在接口里只能定義常量和抽象方法。

public static final String Name;

public abstract void method(String Name);//這里不能用大括號,不然就不是抽象方法了

而且接口不能實例化對象,那么接口怎么用呢?

接口要用類來實現。

public class className implements interName{}

由于接口里面有抽象方法,就得先被重寫。

那么接口有什么用呢?

豐富類的繼承關系。

用于團隊開發中的項目搭建。

2.事件監聽機制:(大頭)

組成:1.事件源對象(就收發生動作的地方)2.事件監聽方法(捕獲事件源對象的動作)3.事件處理類(含處理事件的方法)————以下是圖解(丑兮兮der)

1.事件源對象:

可以是某窗口,某按鈕,某輸入框,反正AWT和SWING組件中所有容器組件和元素組件都可以成為事件源對象。

2.事件監聽方法:

addActionListener

用來捕捉類似輸入框組件對象上的鍵盤回車動作;

用來捕捉類似按鈕組件對象上的鼠標點擊動作;

addMouseListener

用來捕獲事件源對象上的鼠標進入、離開、按下、釋放以及點擊。

addMouseMotionListener

用來捕獲事件源對象上的鼠標拖動和移動動作。

addKeyListener

用來捕獲事件源對象上的鍵盤按下,釋放和敲擊動作。

3.事件處理類:

ActionListener動作事件接口

MouseListener鼠標事件接口

MouseMotionListener鼠標移動事件接口

KeyListener鍵盤事件接口

說了這么多,來看看簡單的樣例吧。比如說按下按鍵就彈出個窗口

package interlistener;

import javax.swing.JButton;

import javax.swing.JFrame;

public class Test {

/*** Drake*/

public void inti()

{

JFrame frame=new JFrame();

JButton button =new JButton ("Login");

frame.add(button);

Listener l=new Listener();//實例化事件處理類button.addActionListener(l);//給按鈕加事件監聽方法

frame.setTitle("Drake");

frame.setSize(500, 500);

frame.setDefaultCloseOperation(3);

frame.setVisible(true);

}

public static void main(String[] args) {

// TODO Auto-generated method stubTest t=new Test();

t.inti();

}

}

package interlistener;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JFrame;

public class Listener implements ActionListener{

public void actionPerformed(ActionEvent e)

{//下面的內容在按下按鈕后執行JFrame frame=new JFrame();

frame.setTitle("HelloWorld");

frame.setSize(500, 500);

frame.setDefaultCloseOperation(3);

frame.setVisible(true);

}

}

點擊中間按鈕之后:duang!

就這么簡單哈。

簡單解析接口和事件監聽機制先說這些。感謝大家的閱讀。

(本人的處女作,希望大家多多吐槽)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/397609.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/397609.shtml
英文地址,請注明出處:http://en.pswp.cn/news/397609.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

例子:好友列表選中效果

<style type"text/css"> *{ margin:0px auto; padding:0px; font-family:微軟雅黑; font-size:16px;} .f{ width:200px; height:30px; background-color:#63C; color:white; text-align:center; line-height:30px; vertical-align:middle; margin-top:3px} .f:…

sublime 常用插件

AutoFileName 文件提示路徑&#xff0c;在img,script的[src]屬性。link,a的[href]屬性&#xff0c;background 的[url]屬性后提示文件的路徑 CSS Format css格式化工具 Pretty JSON json格式化工具轉載于:https://www.cnblogs.com/zhangtao1990/p/9231608.html

有一句說一千句,是作家....

有一句說一千句&#xff0c;是作家&#xff0c;這叫文采&#xff1b;有一句說一百句&#xff0c;是演說家&#xff0c;這叫口才&#xff1b;有一句說十句&#xff0c;是教授&#xff0c;這叫學問&#xff1b;有一句說一句&#xff0c;是律師&#xff0c;這叫嚴謹&#xff1b;說…

java jsoup爬取動態網頁_java通過Jsoup爬取網頁(入門教程)

一&#xff0c;導入依賴org.jsoupjsoup1.10.3org.apache.httpcomponentshttpclient二&#xff0c;編寫demo類注意不要導錯包了,是org.jsoup.nodes下面的package com.taotao.entity;import org.apache.http.HttpEntity;import org.apache.http.client.methods.CloseableHttpResp…

Java設計模式之七大結構型模式

總體來說設計模式分為三大類&#xff1a;創建型模式、結構型模式和行為型模式。 結構型模式&#xff0c;共有七種&#xff1a;適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式。 其中適配器模式主要分為三類&#xff1a;類的適配器模式、對象的適配…

一個Option請求引發的深度解析

在當前項目中&#xff0c;前端通過POST方式訪問后端的REST接口時&#xff0c;發現兩條請求記錄&#xff0c;一條請求的Request Method為Options&#xff0c;另一條請求的Reuest Method為Post。想要解決這個疑惑還得從以下3個概念說起。 Http Options Method RFC2616標準&#x…

ionic+AnjularJs實現省市縣三級聯動效果

建議對ionic和AnjularJs有一定了解的人可以用到&#xff0c;很多時候我們要用到選擇省份、城市、區縣的功能&#xff0c;現在就跟著我來實現這個功能吧&#xff0c;用很少的代碼&#xff08;我這里是根據客戶的要求&#xff0c;只顯示想要顯示的部分省份和其相對應的城市、區縣…

md5和SHA校驗碼

md5已經不安全了,中國山東大學女學霸王小云破解了一系列密碼,當真是巾幗不讓須眉.說是破解,其實就是給你一個md5碼,讓你求出這個md5碼所對應的原始信息,顯然一個md5對應無數種原始信息.而md5的特性就是難以還原初始信息,但是王小云可以迅速找到給定md5碼的可行解.md5的解空間雖…

Confluence 6 附件存儲文件系統的分級

從 Confluence 3.0 開始&#xff0c;附件的存儲方式有了重大的改變和升級。如果你是從 Confluence 2.10 及其早期版本升級上來的&#xff0c;請參考 Upgrading Confluence 頁面中推薦的升級路徑&#xff0c;同時請閱讀 Confluence 3.0 文檔中 Hierarchical File System Attachm…

Fragment與Activity交互(使用接口)

在Fragment中: 1. // 定義一個回調接口&#xff0c;該Fragment所在Activity需要實現該接口// 該Fragment將通過該接口與它所在的Activity交互 { public void onItemSelected(Integer id);}2. // 當該Fragment被添加、顯示到Activity時&#xff0c;回調該方法 public void onA…

java保齡球計分_自己寫的java保齡球記分

package com.java.bowlingscore1;import java.util.Arrays;public class Game { int[] bowlingScore new int[21]; //用來存放投擲擊倒的數目 int ball0; //數組下標 int score;//分數 int countframe0;//記錄當前是第幾輪 boolean firs…

你不知道的JavaScript-0

【數組】 刪除數組的幾種方法&#xff1a; https://www.cnblogs.com/Joans/p/3981122.html http://www.cnblogs.com/qiantuwuliang/archive/2010/09/01/1814706.html 【數字轉換】 parseInt(num, radix): 【寬松相等和嚴格相等】 允許在相等比較中進行強制類型轉換&#xff0c…

真是,原來可以這樣啊

一下午&#xff0c;解決了兩個問題。。。。。 先列上這兩個真是Bug的問題&#xff1a; 1、數據庫有個表book&#xff0c;里面有個字段 create_time Datetime類型的字段&#xff0c;這個字段是 not null 的。下午下代碼往數據庫里插入數據時&#xff0c;總是提示&#xff0c;cre…

1026. Table Tennis (30)

題目如下&#xff1a; A table tennis club has N tables available to the public. The tables are numbered from 1 to N. For any pair of players, if there are some tables open when they arrive, they will be assigned to the available table with the smallest numb…

java運行時異常中文_JAVA——運行時異常(RuntimeException)

Exception中有一個特殊的子類異常RuntimeException運行時異常。如果在函數內拋出該異常&#xff0c;函數上可以不用聲明&#xff0c;編譯一樣通過。如果在函數上聲明了該異常。調用者可以不用進行處理。編譯一樣通過。之所以不用在函數上聲明&#xff0c;是因為不需要讓調用者處…

內置函數isinstance和issubclass

1. isinstance&#xff08;obj,class&#xff09; 判斷對象obj是不是由class生成的對象。 class Foo:passobjFoo()print(isinstance(obj,Foo))obj是Foo的生成的對象&#xff0c;返回True。如果不是&#xff0c;則返回False。 d{x:1} #ddict({x:1} #)print(type(d) is dict) pri…

JavaOne 2016——首日亮點

今年&#xff0c;為期5天的JavaOne會議中&#xff0c;4個會場的議題都進行了直播&#xff0c;演講稿也在播出之后一并提供。\\來自Terracotta公司EHCache團隊的Henri Tremblay&#xff0c;做了主題為《學習Java 8&#xff1a;Lambda表達式和函數式編程&#xff08;Learn Java 8…

指針數據類型 java_C/C++ 指針的小結——指針與其它數據類型(數組、字符串、函數、結構體)的關系...

一、指針與數組和字符串1、指針與數組當聲明數時&#xff0c;編譯器在連續的內存空間分配基本地址和足夠的儲存空間&#xff0c;以容納數組的所有元素。基本地址是數組第一個元素(索引為0)的存儲位置。編譯器還把數組名定義為指向第一個元素的常量指針。元素的地址是通過索引和…

Linux tr命令詳解

tr是個簡單的替換命令&#xff0c;從標準輸入中替換、縮減和/或刪除字符&#xff0c;并將結果寫到標準輸出。 tr常見命令參數 用法&#xff1a;tr [選項]... SET1 [SET2] 從標準輸入中替換、縮減和/或刪除字符&#xff0c;并將結果寫到標準輸出。-c, -C, --complement …

512M內存編譯php出錯

make時錯誤如下 1 virtual memory exhausted: Cannot allocate memory make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1 內存小造成的&#xff0c;為了成功的話需要加上參數 –disable-fileinfo即可參考鏈接&#xff1a;https://bugs.php.net/bug.php?id48809 轉載于…