Java处理事件/ActionEvent事件/ASCII码/校验码/逻辑代数及逻辑运算/机器数的运算

Java处理事件

在这里插入图片描述

处理事件的模式

  • 事件源
    能产生事件的对象都可以称为事件源,事件源必须是一个对象
  • 监视器
    对事件进行监视,事件源通过调用相应的方法将某个对象注册为自己的监视器
  • 处理事件的接口
    Java要求监视器必须和一个专用于处理事件的方法进行绑定,要求创建监视器必须实现Java规定的接口,该接口中有专用于处理事件的方法

AcitonEvent事件

ActionEvent事件源

  • 文本框和密码框 //当文本框和密码框获取焦点后,如果用户按下了回车,那么就会触发ActionEvent事件
  • 按钮和单选按钮 //当用户点击时
  • 菜单项 //当用户选中该菜单项时

注册监视器
addActionListener(ActionListener listen)//添加ActionListener事件监视器

ActionListener接口
该是一个单接口,只有一种方法
public void actionPerformed(ActionEvent e)//里面的e是Java运行环境自动创建的一个对象

ActionEvent类中常用的方法

  • public Object getSource()// //将事件源上转型为Object对象,并返回这个上转型对象的引用
  • public String getActionCommand()//回去和该事件相关的字符串,默认的命令字符串是文本框中的字符串

例子

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
class myListener implements ActionListener{
    myWindow1 view;
    public void setView(myWindow1 view) {
        this.view = view;
    }
    @Override
    public void actionPerformed(ActionEvent actionEvent) {
        int n = 0;
        int m = 0;
        String str = view.setText.getText();    //获取输入框的文本
        try{
            if (!str.isEmpty()){    //判断是否含有字符串
                n = Integer.parseInt(str);   //将字符串转为int
                m = n * n;
                view.showText.setText(""+m);    //进行并运算
            }
        }
        catch(Exception e){
           view.showText.setText("请输入数字!");
        }
    }
}
class myWindow1 extends JFrame{
    JTextField setText,showText;    //一个输入,一个展示
    JButton enter;  //确定按钮
    myListener listener;
    myWindow1(){
        setTitle("实现平方运算");
        setBounds(300,300,400,300);
        setLayout(new FlowLayout());    //设置布局
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        init();
        setVisible(true);   //是否可视化
    }
    void init(){
        Container con = this.getContentPane();
        con.setBackground(new Color(54, 103, 40));
        listener = new myListener();    //实例化监视器
        listener.setView(this); //将当前对象创给传给监视器
        setText = new JTextField(10);
        setText.addActionListener(listener);    //添加监视器
        add(setText);
        enter = new JButton("ENTER");
        enter.addActionListener(listener);
        add(enter);
        showText = new JTextField(10);
        showText.setEditable(false); //设置成不可编辑
        showText.addActionListener(listener);
        add(showText);
    }
}
public class Example10_7 {
    public static void main(String[] args) {
        myWindow1 myWindow1 = new myWindow1();
    }
}

效果图
在这里插入图片描述

计算机数据表示及运算

ASCII码
在这里插入图片描述

什么是ASCII码?//美国标准信息交换代码(American Standard Code For Information Interchange)
采用高3位低4位,一共有128个编码码(从0~127),

汉字编码

  • 输入码
    数字编码//就是用数字串代表一个汉字的输入
    拼音编码//用汉语拼音为基础
    字形编码//就是所谓的五笔输入,缺点就是偏旁太多
  • 内部码
    什么是内部码?//内部码就是汉字在信息系统内部进行储存/处理/传输文字时的代码
    每个汉字内码占2个字节
  • 字形码
    字形码是表示汉字字形的字模数据,通常用点阵.矢量函数等方式表示

校验码
由于计算机系统运行时,各个部件之间经常需要进行数据交换,为保证数据能正确地进行交换,那么就必须引入差错检查机制,原理就是通过在编码中引入一定的冗余位,当被传送的编码出现错误是就是使之成为非法代码

  • 奇偶校验码
    原理就是增加一位校验位,使校验位与码字中保持偶数或奇数
  • 海明码//我也没搞明白
  • 循环冗余校验码(CRC) //也没搞明白

逻辑代数及逻辑运算
什么是逻辑代数?//逻辑代数是英国数学家乔治布尔1849年提出的,用代数的方式对逻辑变量进行描述和分析的数学工具,也成为了布尔代数.逻辑变量只有两个值真(1)假(0)

  • 基本逻辑运算
    "与"运算//又称为逻辑乘运算(||)
    "或"运算//又称为逻辑加运算(1 + 1 = 1)(&&)
    “非运算”//又称为取反运算(!)

机器数的运算

  • 机器算的加减运算//通常都是常用补码(负数的补码是其反码加1)来实现
    需要特别注意的是溢出情况,也就是当两个正数相加变为负数时的判别
    就是采用双符号位判决法分别用S1和S2表示,当结果S1 + S2 = 1时就为溢出

加粗样式

HTML

HTML 响应式 Web 设计
HTML 框架
HTML Iframe

CSS

CSS基础教程

JavaScript

JavaScript严格模式

CET4P159

dose
immediately
clause
vacation
vacuum
psychological
barn
cattle
ore
laser
compel
contradiction
initiative

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java中,可以使用多个事件监听器来处理不同的事件。常见的事件监听器包括Mouse/Window/ActionListener等。 下面是一个简单的示例代码,展示如何使用多个事件监听器: ```java import java.awt.*; import java.awt.event.*; public class MultipleEventListeners extends Frame implements ActionListener, MouseListener, WindowListener { public MultipleEventListeners() { addWindowListener(this); addMouseListener(this); Button button = new Button("Click Me"); button.addActionListener(this); add(button); setSize(300, 300); setVisible(true); } public void actionPerformed(ActionEvent e) { System.out.println("Button clicked"); } public void mouseClicked(MouseEvent e) { System.out.println("Mouse clicked"); } public void windowClosing(WindowEvent e) { System.out.println("Window closing"); dispose(); System.exit(0); } // 实现其他方法(MouseListener、WindowListener接口方法)... } ``` 在上面的示例中,实现了三个监听器接口:ActionListener、MouseListener和WindowListener。在构造函中,通过addXXXXListener()方法将这些监听器添加到Frame中。 这样,在用户与窗口交互时,就会触发相应的事件,并调用相应的监听器方法进行处理。例如,当用户点击按钮时,将会触发ActionEvent事件,并调用actionPerformed()方法;当用户点击鼠标时,将会触发MouseEvent事件,并调用mouseClicked()方法;当用户关闭窗口时,将会触发WindowEvent事件,并调用windowClosing()方法。 通过这种方式,可以同时处理多个事件,并且让程序更加灵活和易于扩展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值