java基础-抽象类和接口-swing界面编程-事件处理机制

本周学习了抽象类和接口、swing界面编程和事件处理机制,故而写一遍总结,作为对之前学习的知识的梳理和复习。

抽象类:

抽象类是一个通过抽取N个类之间的共性而组成的一个类,它只能作为其他类的父类,不能直接实例化使用。编写一个计算多边形面积和周长的类,首先可以创建一个抽象的父类(它拥有基本的属性和方法)

public abstract class Shape {
  String name;
  abstract double getPerimeter();//计算周长的抽象方法
  abstract double getArea();//计算面积的抽象方法
}

然后可以创建一个具体形状的类来继承上面的抽象类,如圆形、矩形、三角形
下面创建一个圆形为普通类

public class Circle extends Shape{
  double radius;
  public Circle(double radius) {
    this.radius = radius;
  }
  double getPerimeter() {
    return 3.14 * 2 * radius;
  }eaxewdss  
  double getArea() {
    return 3.14 * radius * radius;
  }
}

创建主方法调用

public static void main(String[] args) {
  Shape circle = new Circle("5号圆" , 5.0);
  System.out.println(circle.name + "的周长为:" + circle.getPerimeter());
  System.out.println(circle.name + "的面积为:" + circle.getArea());
}

简单来说抽象类不一定要有抽象方法,但是有抽象方法的类就一定是抽象类, 在Java中,使用关键字abstract来表示抽象。
用abstract修饰类,则声明该类为抽象类,不允许创建实例。
用abstract修饰方法,则声明该方法为抽象方法,不允许有方法体。

接口

接口的用interface关键字来声明:interface 接口名称{ //接口体}
接口的属性必须全部是常量,并且方法也必须全部是抽象方法
接口使用implements来实现:Class 类名 implements 接口名{//类定义体}
接口和抽象方法的区别:
实现接口的类必须全部实现接口抽象方法
一个类可以实现多个接口。

swing界面编程

swing由javax.swing包提供。
常见的swing组件
JFrame 窗口
JLabel 标签,可以表示文本和图像
JTextField 文本框
JPasswordField 密码框
JRadioButton 单选按钮
JCheckBox 多选框
JPanel 面板
JComboBox 下拉框
JTextArea 多行文本框
JButton 按钮
JScrollPane 带滚动条的面板

从功能上分为:容器和基本组件;容器又分为顶层容器和中间层容器。
顶层容器:JFrame、JDialog、JApplet 。用于构造图形用户界面的窗口,并容纳其它容器和组件,它们可以独立存在 。
中间层容器 :JPanel、JScrollPane、JToolBar等。容纳其它组件,但是不能独立存在,需要添加到其它容器中。通常用来按功能组织基本组件 。
基本组件:按钮JButton、文本框JTextField等等。是图形用户界面的基本组成单位,不能独立存在,必须将其添加到一定的容器中。

事件处理机制

事件处理:在Java语言中,当用户与(GUI组件交互时,GUI组件能够激发一个相应事件。Java提供完善的事件处理机制,能够监听事件,识别事件源,并完成事件处理。 所有的事件类和监听器接口都是在 java.awt.event包中
常见的事件
ActionEvent 动作事件 【鼠标点击了按钮、鼠标选择了菜单】
MouseEvent 鼠标事件【鼠标按下、鼠标松开、鼠标点击、光标进入、光标离开、光标移动、光标拖拽】
KeyEvent 键盘事件 【键盘按键按下、键盘按键松开、键盘输入】
对应的事件监听器:
ActionListener 动作监听器
MouseListener 鼠标监听器
KeyListener 键盘监听器

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值