接口相关知识讲解
接口定义: 关键字:interface
格式: public interface 接口名{ }
接口属性: [public static final] 属性的类型 属性名 = 初始值;
static:静态的,修饰的内容可以通过类名/接口名直接访问。
final:不可改变的,修饰的属性,则必须初始化。
接口方法: [public abstract] 方法返回值类型 方法名(参数类型 参数名,……); abstract:抽象的,修饰方法,则方法不能有方法体。
接口使用: 接口不能创建对象。 需要使用接口类型的对象,则需要创建一个类,实现接口: 关键字: implements 格式: public class 类名 implements 接口名{ } 类实现接口的时候,必须实现接口中所有的方法。
接口的作用: 规则制定
事件监听机制: 给事件源组件添加事件监听器,当事件源组件上发生相应类型的事件时,则自动的调用监听器中事件处理方法。
事件:用外部设备操作组件
鼠标事件: 用鼠标操作组件(关注:鼠标操作的位置、类型) 键盘事件: 用键盘操作组件
动作事件: 包含鼠标点击按钮(关注:点击的哪一个按钮)
事件源组件:事件发生所在的组件。
事件监听器:java中为每一种类型的事件都提供了一个对应类型的事件监听器 鼠标事件监听器: MouseListener
键盘事件监听器: KeyListener
动作事件监听器: ActionListener
效果图
输入账号和密码之后,会出现一个提示,如果正确,那么就关闭当前窗口,跳转到另一个窗口。
代码展示
public class LoginListener implements ActionListener{
private static final int DISPOSE_ON_CLOSE = 0;
//输入框
//密码输入框
JPasswordField nameIn1;
JTextField nameIn;
public LoginListener(JTextField nameIn,JPasswordField nameIn1) {
this.nameIn = nameIn;
this.nameIn1 = nameIn1;
}
JFrame loginFrame;
public void window(JFrame loginFrame){
this.loginFrame=loginFrame;
}
public void actionPerformed(ActionEvent e) {
//获取输入框内容
String name = nameIn.getText();
String name1 = nameIn1.getText();
JFrame loginFrame1=loginFrame;
//判断
if(name.equals("晓飞")&&(name1.equals("123456"))) {
System.out.println("登录成功!");
loginFrame1.dispose();
//loginFrame1.setVisible(false);
new WindowFrame();
}else {
System.out.println("登录失败!");
}
System.out.println("按钮点击了!");
}
}
这一部分实现的是关闭当前窗体,打开新的窗体
loginFrame1.dispose();
//loginFrame1.setVisible(false);
new WindowFrame();
!!!!记得传参。
//显示界面的方法
public void showUI() {
//窗体
JFrame loginFrame = new JFrame();
//设置窗体的属性
loginFrame.setSize(550, 400);
loginFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//设置窗体布局
loginFrame.setLayout(new FlowLayout());
//创建一个账号标签
JLabel nameLabel = new JLabel("账号");
//添加到窗体上
loginFrame.add(nameLabel);
//创建一个输入框对象
JTextField nameIn = new JTextField(40);
//添加到窗体上
loginFrame.add(nameIn);
//创建一个密码标签
JLabel passwordLabel = new JLabel("密码");
//添加到窗体上
loginFrame.add(passwordLabel);
//创建一个输入框对象
JPasswordField nameIn1 = new JPasswordField(40);
//添加到窗体上
loginFrame.add(nameIn1);
//添加按钮
JButton loginBtn = new JButton("登录");
//添加到窗体上
loginFrame.add(loginBtn);
//创建监听器对象
LoginListener loginL = new LoginListener(nameIn,nameIn1);
//给按钮添加监听器
loginBtn.addActionListener(loginL);
//设置窗体可见
loginFrame.setVisible(true);
loginL.window(loginFrame);//在监听器里面,使用监听器的对象调用。
}