java中怎么实现接口和事件监听器

网友投稿 131 2024-02-01


java中怎么实现接口和事件监听器

本文讲解"java中如何实现接口和事件监听器",用于解决相关问题。

一:接口

接口在我们生活中无处不在,通过一个usb接口,我们可以通过u盘传输数据,这个接口是被定义过的,只有指定的类型能够使用这个接口,且通过这个接口我们传输的数据不会被破坏。

而在java中接口作用类似,定义一个具有特定特点的接口,在合适的地方引用它,执行所对应的功能,这样能够实现代码的分离。

下面我们来看一下接口的定义:

   关键字:interface

   格式:public interface 接口名{ }

接口的属性:

   [public static final]属性类型 属性名=属性值;

static:静态的,修饰的内容可以通过类名或接口名直接访问。

   final:不可改变的,修饰属性,则属性必须初始化。

   [ ]里的内容可以省略

接口的方法:

[public abstract]方法返回值类型 方法名(参数类型 参数名)

   abstract:抽象的,修饰方法,则方法不能有方法体。

   [ ]中内容可以省略

接口的使用:

接口不能创建对象,需要接口类型的对象则需要创建一个类,从而实现接口

   关键字:implements

格式:public class 类名 implements 接口名{ }

   **注意:在类中实现接口时,必须实现接口中所有的方法**

总结来说,接口相当于制定了一种规则,只有符合这种规则了才能进入相应的接口。

二:事件监听机制

想象一下,比如在生活中,有一个摄像头在监视着小明,监督他好好学习,如若发现他在做别的事情则会发出警告提示让他继续学习,而在java中原理也是一样。

给事件源组件添加事件监听器,当事件源组件上发生相应类型的事件时,则自动的调用监听器中的内容。

在电脑上常见的事件类型有三种

    鼠标事件:用鼠标操作组件(鼠标的移动,点击,松开)

    键盘事件:用键盘操作组件(按动键盘的按键)

动作事件:包含鼠标点击按钮,键盘确认等。

事件源组件:事件发生所在的组件,比如在一个创建好的画图板上。

事件监听器:java中为每一种类型的事件都提供了一个对应类型的事件监听器。

   鼠标事件监听器:MouseListener

键盘事件监听器:KeyListener

   动作事件监听器:ActionListener

事件监听器的实现:

  第一步:确定事件源组件

     例如一个按钮

  第二步:确定事件类型

     点击按钮则为动作事件

  第三步:

创建一个监听器类,实现对应类型的监听器接口

  第四步,在源程序创建监听器对象,给事件源组件添加事件监听器。

下面我们看一个登陆界面的实例

这一段是建立一个登陆界面

public class UI {  /**  *   */  public void showIU(){  //建立新界面  JFrame frame=new JFrame();  frame.setSize(600, 900);  //用户点击关闭窗口时关闭界面  frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  //流式布局  FlowLayout layout=new FlowLayout();  frame.setLayout(layout);  //插入账号文本框  JTextField register=new JTextField(30);  frame.add(register);  //标签1  JLabel label1=new JLabel("注册账号");  frame.add(label1);  //密码  JPasswordField word=new JPasswordField(30);  frame.add(word);  //标签2  JLabel label2= new JLabel("找回密码");  frame.add(label2);    JCheckBox checkbox=new JCheckBox("记住密码 ");  frame.add(checkbox);  //设置复选框大小  Dimension check =new Dimension(200,35);  checkbox.setPreferredSize(check);      //加入接口类  lisener lisen=new lisener();  //给按钮添加监听器  butt.addActionListener(lisen);  //让监听器的文本框和处理的文本框对应  lisen.nameinput=register;  lisen.passinput=word;  //让监听器的框与此相同  lisen.jiemian=frame;    word.addActionListener(lisen);    /*  //加入接口  Listener2 lisen1=new Listener2();  //添加监听器  word.addKeyListener(lisen1);  //对应文本框和密码框  lisen1.name1=register;  lisen1.pass1=word;  lisen1.frame=frame;  */  //设置界面可见  frame.setVisible(true);    }  public static void main(String[] args){  UI ui=new UI();  ui.showIU();  } }

我们从中建立了两个接口,两个动作监听器分别监听按钮是否点击和是否按键盘上的按键,从此出现相应结果。

import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import javax.swing.JDialog; import javax.swing.JTextField; import javax.swing.JOptionPane; import javax.swing.JFrame; public class lisener implements ActionListener{  JTextField nameinput;  JTextField passinput;  JFrame jiemian;  public void actionPerformed(ActionEvent e){  System.out.println("鼠标点击了");  String name=nameinput.getText();  String password=passinput.getText();  if(name.equals("majunlong")&&password.equals("12345678")){   System.out.println("登陆成功");   jiemian.dispose();  }        else{   System.out.println("登陆失败");   JOptionPane pane=new JOptionPane();   JOptionPane.showMessageDialog(null, "登陆失败", "警告", JOptionPane.ERROR_MESSAGE);     }       } }

这是一个鼠标监听器,当按钮被点击时发出提示框登陆成功或失败。

import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import javax.swing.JTextField; import javax.swing.JFrame; import javax.swing.JOptionPane; public class Listener2 implements KeyListener{  JTextField name1;  JFrame frame;  JTextField pass1;  public void keyTyped(KeyEvent e) {  // TODO Auto-generated method stub      }  public void keyPressed(KeyEvent e) {  // TODO Auto-generated method stub    }  public void keyReleased(KeyEvent e) {  // TODO Auto-generated method stub  System.out.println("鼠标点击了");  String name=name1.getText();  String password=pass1.getText();  if(name.equals("majunlong")&&password.equals("12345678")){   System.out.println("登陆成功");   frame.dispose();  }        else{   System.out.println("登陆失败");   JOptionPane pane=new JOptionPane();      JOptionPane.showMessageDialog(null, "登陆失败", "警告", JOptionPane.ERROR_MESSAGE);     }       }  }

键盘监听器,在输入密码之后按下回车,获得相应提示。

Java编程技术

本文讲解"spring-redis-session 自定义 key 和过期时间",用于解决相关问题。对于分布式应用来说,最开始遇到的问题就是 session 的存储了,解 ...


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:linux用户接口有哪些
下一篇:接口自动化测试系列之PHPUnit-POST请求接口测试方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~