接口,抽象类,事件机制的理解更正版

接口,抽象类,事件的理解:
接口:
       1、定义接口的关键字是interface,即是把平常的public class 类名{}
改为-->public interface 接口名{}
其实接口也是一种特殊的类:
特殊点:1、访问修饰符 只有public(且是默认的,也可以不写)
 2、可以定义内容:
    常量:public static final 数据类型 常量的名字=值;
  final static 数据类型 常量名 = 值;
  数据类型 常量名 = 值;
           public static final可以省略不写,因为也是是默认的
    注意:常量的名字要都是大写的字母
    调用常量:接口名.常量名进行调用

    抽象方法:public abstract  返回值类型 方法名(数据类型 参数名);不能有{}
         abstract 返回值类型 方法名([数据类型 参数名,...]);
        返回值类型 方法名([数据类型 参数名,...]);
  public abstract都可以去掉,因为也是默认的。
 3、继承: 接口不能继承类,只能继承继承接口,可同时继承多个接口(用,隔开)
  public interface 接口名 extends 接口,... {}
    注:类不可以同时继承多个父类-->单继承

 4、创建对象: 不能创建对象,因为没有构造器
 5、关键字:interface

接口要再写个类进行实现 关键字:implements
  public class 类名 implements 接口名{}

再写的这个类必须要实现接口中所有的抽象方法才可以
但此时的implements不能再写了,如果接口继承的父类里也有
抽象方法,再写的这个类也要实现

注意:一个类只能先继承一个类再实现接口,不能反过来,这是Java里的规则
public class 类名 extends 类或者抽象类  implements 接口,... {}
     其实实现也是一种继承关系

接口有什么用呢?它可以一次实现多个接口,也可以用到以后的团队合作中

接口与类的不同点:
1、接口:可以实现多个接口,abstract,定义内容只有常量和抽象方法,访问修饰符-->只有public,不能创建对象
2、类:只能继承一个类,class,定义内容-->定义属性、定义构造方法、定义普通方法。访问修饰符-->public、
       默认的,protected、private,可以创建对象对象
  

抽象类:
  abstract
访问修饰符 abstract 抽象类名{}
可以定义常量,public public static final 常量类型。。。
 可定义属性,构造方法,抽象方法,普通方法
可以继承类或抽象类,然后再实现接口
public abstract class 抽象类名 extends 类或者抽象类  implements 接口,... {}
四种访问修饰符都可以使用、其实,抽象类可看做类和接口的集合

注意:抽象类不能创建对象(因为里面有抽象方法)
如果继承了接口或抽象类,可以不实现接口中的抽象方法,因为
抽象类里可以存在抽象方法,如果父类的构造器被重写,子类至少调用一个父类的构造器
     如果父类里有默认的构造器,子类可以不调用父类的,因为子类也有一个默认的构造器

事件机制:
    事件源:Java中所有的图形界面组件都可成为事件源,
  比如说按钮、标签等各种容器元素,动作发生在哪一个控件上,那么该控件就是事件源对象。
    事件监听器方法:来监听事件源上有无动作发生,并作出相应反应
      就是说用来监听事件源上不同的动作的发生,当相应监听器方法监听到动作后,会自动
  调用相应的事件接口或事件抽象类的对象进行处理。
事件接口或事件抽象类:
事件接口或者事件抽象类就是当事件监听器方法监听到动作之后,会调用事件
接口或者事件抽象类,因为他们不能创建对象、所以要重写一个类来实现事件接口或事件抽象类
 常用的事件监听器:
  keylistener:监听键盘的按下和释放操作、按键得到值
  ActionListener 监听器类似按钮控件的点击操作,类似输入框控件的回车操作 
  MouseListener  监听鼠标的进入,离开,按下,释放和单击操作
  MouseMotionListener   监听鼠标的拖动和移动操作
add监听器(监听器对象,要把监听器加到相应的事件源上);  
  addActionListener(ActionListener l) 
  addMouseListener(MouseListener ml) 
  addMouseMotionListener(MouseMotionList ll); 
  addKeyListener(KeyListener kl) 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值