java初学者:接口技术文章

Java接口技术文章

Java里接口是一系列方法的声明,是一些方法特征的集合,(接口中定义的是常量和抽象方法),由于接口中没有方法的实现,所以它的方法可以在不同的类中实现,要实现接口中的方法,需要在对接口的继承之后对父类的所有方法进行重写,因此实现接口也就是实现了该类继承了接口,实现了接口中的方法

接口定义的语法为:

Public interface 接口名 {

//定义常量

public static final 数据类型常量名 = 值;

//定义抽象方法

Public abstract 返回值类型方法名(数据类型参数名...)

}

在接口定义中需要注意的几点是:

1、在接口中不允许实例化一个对象,并且只有一种访问修饰符 public 。

2、在接口中默认提供static,final,abstract关键字。

在我看来,由于java中一个子类只能继承一个父类,而接口不受这种影响,即一个类可以实现多个接口,因此对接口的继承可以弥补这一种不足。另外,在定义接口的时候也同样可以实现多个其他的接口。这种实现可以认为类似于类中的继承。

接口实现的关键字是implements,

具体语法为:public class 类名  extends 类名   implements 接口名,... {

//该类必须实现接口中的所有的方法

}

在swing界面编程中,有四种非常重要的接口可能会被多次使用,他们分别是addActionListener(ActionListener l);

addMouseListener(MouseListener l);

addMouseMotionListener(MouseMotionListenerl);

addKeyListener(KeyListener l);他们都是事件监听方法,用来实现对事件源对象的监听,所有的图形界面组件(容器组件,元素组件)都可以成为事件源对象,操作者的动作发生在哪一个组件上,那么该组件就是事件源对象。再来看这四种监听方法,其中:

addActionListener(ActionListener l); 是用来捕获事件源上的鼠标点击(类似按钮组件)或者键盘的回车动作(输入框),交给参数ActionListener对象进行处理

addMouseListener(MouseListener l); 是用来捕获事件源上的鼠标进入、离开、按下、释放、点击的动作,然后交给参数MouseListener对象进行处理

addMouseMotionListener(MouseMotionListenerl); 是用来捕获事件源上的鼠标移动或者拖动动作,然后交给参数MouseMotionListener对象进行处理

addKeyListener(KeyListener l); 是用来捕获事件源上的键盘按键按下,释放和敲击动作,然后交给参数KeyListener对象进行处理

在实际编程时,我们需要根据实际情况来选择使用不同的监听方法,但需要注意的是,一个类中可以实现多个接口,每实现一个接口,我们需要将接口中的所有方法都重写。

给一个事件源添加监听器的步骤具体为:

1、新建一个继承了相应的监听方法的类,根据类名实例化一个对象,将事件源对象作为参数传递给该类。

2、给事件源对象添加一个动作监听方法

3、在该类中实现接口的方法。

下面通过一个简单的例子来说明接口的实现以及监听方法的使用:

实现一个登录界面,当点击登陆按钮时关闭登陆界面,出现一个新的窗体(暂不考虑验证登陆密码)

Login类

LoginListener类

时间: 2024-10-07 07:24:01

java初学者:接口技术文章的相关文章

Java 加解密技术系列文章

Java 加解密技术系列之 总结 Java 加解密技术系列之 DH Java 加解密技术系列之 RSA Java 加解密技术系列之 PBE Java 加解密技术系列之 AES Java 加解密技术系列之 3DES Java 加解密技术系列之 DES Java 加解密技术系列之 HMAC Java 加解密技术系列之 SHA Java 加解密技术系列之 MD5 Java 加解密技术系列之 BASE64

Java初学者

一位资深程序员大牛给予Java初学者的学习路线建议 java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容甚至是一些书籍.这一部分的内容,同样适用于一些希望转行到Java的同学. 在大家看之前,我要先声明两点.1.由于我本人是Java后端开发出身,因此所推荐的学习内容是Java Web和Java后端开发的路线,非Java Web和J

一位资深程序员大牛给予Java初学者的学习建议(转)

一位资深程序员大牛给予Java初学者的学习建议 这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议? 今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容甚至是一些书籍.这一部分的内容, 同样适用于一些希望转行到Java的同学. 在大家看之前,我要先声明两点. 1.由于我本人是Java后端开发出身,因此所推荐的学习内容是Java Web和Java后端开发的路线, 非Java Web和Java后

转载:一位资深程序员大牛给予Java初学者的学习路线建议

一位资深程序员大牛给予Java初学者的学习路线建议 java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈每个阶段要学习的内容甚至是一些书籍.这一部分的内容,同样适用于一些希望转行到Java的同学. 在大家看之前,我要先声明两点.1.由于我本人是Java后端开发出身,因此所推荐的学习内容是Java Web和Java后端开发的路线,非Java Web和J

2017上半年技术文章集合【Android】—184篇文章分类汇总

地址: http://blog.csdn.net/androidstarjack/article/details/77923753 声明 | 本文是于亚豪 原创 终端研发部 前言: 2017年已经过大半,公众号里技术文章整理和归类了一下,方便给大家查找和阅读.这也是目前 发文的一个统计. View篇: 高级UI特效之酷炫抢红包金币下落动画 一个超级方面的用户指引view-App实现用户指引就是如此简单 让View像粒子一样自由运动 手把手教你实现RecyclerView实现上拉刷新功能 高级UI

学习Java 的第一篇文章

第一章   Java基础 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识点时,要进行验证 02.查看帮助文档和搜索引擎的使用 借助网络上的Blog文章 03.不要急功近利 不要抱着速成的想法,否则必然走弯路     学习编程不是一蹴而就的事情     付出的成本高,才能有一个高薪的收入 04.不要浮躁 不要什么都学,只学有用的 浮躁的程度和技术水平成反比的     走自己的路,让别人去浮躁去吧! 每天问问自己,我是不是开始浮躁了,不能人云亦云. 05.学习语言基础

分布式服务架构之java远程调用技术浅析

分布式服务架构之java远程调用技术浅析     在分布式服务框架中,一个最基础的问题就是远程服务是怎么通讯的,在Java领域中有很多可实现远程通讯的技术,例如:RMI.MINA.ESB.Burlap.Hessian.SOAP.EJB和JMS等,这些名词之间到底是些什么关系呢,它们背后到底是基于什么原理实现的呢,了解这些是实现分布式服务框架的基础知识,而如果在性能上有高的要求的话,那深入了解这些技术背后的机制就是必须的了,在这篇blog中我们将来一探究竟,抛砖引玉,欢迎大家提供更多的实现远程通讯

Java IO流技术

Java IO流技术 Java IO基本总结 Java的IO技术就是用来处理数据的.比如从文件中读取数据,或者将数据写到文件中.在网络中传输的都是二进制,即字节码,我们需要在传输之前,将我们程序中的数据转换成字节码才能进行传输.Java的IO包内就提供了完成这些工作的工具类. 总的来说:当需要以二进制的形式来处理文件时,即不涉及文本内容的操作时,我们可以选择InputStream和OutputStream来完成我们的工作.当需要完成处理字符串相关的工作时,就需要使用Reader和Writer来完

致Java初学者

精心整理资料点击获取 前言 ? 能看到这篇文章的朋友,应该都或多或少的了解Java,也许你现在是个菜鸟还在成长的路上.再此期间你一定遇到了很多困惑疑虑,对未来的学习方向感到很迷惑.作为过来人我非常了解你们现在的处境.我是从2014开始接触Java这门编程语言的,从2017年从事Java相关开发工作,也是一个奋力奔跑的菜鸟,直到今天我还在不断的学习,提升自己的技能,学无止境,学习永远在路上.回顾自己的学习历程,也是充满了困难与挑战,也层迷茫与失落过,但最后都坚持过来了.今天特此写这篇文章,就是为了