多语言展示
当前在线:139今日阅读:19今日分享:20

Java基础之抽象与接口的区别

Java基础学习,对初学者来说,其中的抽象与接口较难理解,抽象类只能被子类继承,而接口类需要在子类中去实现,下面笔者将会介绍抽象类和接口类的用法,并说明它们的区别在哪里。
工具/原料

my eclipse 10或者eclipse均可

创建项目
1

在阅读本经验前,请读者一定要知道java对象是什么,因为学习上对java对象的了解是必不可少的。首先,我们在eclipse开发工具中新建一个项目,叫做“InterfaceTest”,然后在新建包com.test下新建5个类,项目如图所示

2

在项目中依次创建A、B、C类文件,其中A和B类是接口类,C类是抽象类,并分别写出它们的方法method,如图所示抽象类有什么作用,就是说抽象类里的带public或protected方法可以在有extends继承此类的子类下被重写(就是把调用的方法复制过来差不多),而因为抽象类里的抽象方法不能有方法体{ },就必须在子类下去写(实现)。这么说,你会明白,抽象类就是跟模板差不多,可以重复使用,跟生活中的一样,一个类可以有不同的对象,但是每个对象都有同一个特点,这个特点就写在抽象类里面,使用eclipse就可以在创建子类下自动生成。

3

接下来,创建D类文件,在创建时设置好继承C抽象类,然后在实现A、B接口类,如图,extends继承C抽象类,implements实现A,B接口类,在创建后eclipse会自动生成它们的重载方法,重装方法头上一行会带@Override,表示这个方法是重载方法。因此,重装方法无需自行创建。接口类有什么用,这里说的接口,也许有初学者会误认为像生活中一样的电子电器的通信接口和插座一样,但是笔者觉得,这不全是,因为接口类有一个特点,就是接口规范,跟插座规定的形状一样,不能随意连接,也不能随意使用。使用接口的方法往往就在产生事件时候调用的,其它类在实现此接口时,如果要处理什么事件,就要使用到这个接口类的接口方法。笔者现在对接口概念只是模糊的认识,以后等精通了会再来改进的。

4

最后,再创建一个需要执行的主函数类文件,先写出它的3个method方法,分别去调用它们的父类方法;再创建一个主函数main,方法体中创建对象InterfaceTest和D,从对象test调用它的方法method,传递的参数是对象d

5

这里我们是要调用对象D类中的三个方法method,并分别打印println输出它们的信息,输出结果如图所示

区别在哪里
1

抽象与接口是如何使用的,它们的区别在哪里。下面笔者用实际的行动告诉你,修改D类,如图所示,我们把D类的继承extends C和实现implements A,B接口这一段注释掉,然后将方法头的@Override的每一行也注释掉

2

接下来,修改主类InterfaceTest的方法method,把传递参数的类型修改为D,这样改好后,如图所示,点击运行试试看输出结果,仍然是上面的结果一样,但是笔者可以肯定的告诉你,它们的代码执行过程也是一样的。

3

仔细比较下,笔者修改过的两个类:InterfaceTest和D;这里我们会发现,修改过的代码几乎不需要A,B,C这三个类文件,当然,我们可以把它们删除掉,程序仍然能运行;最后笔者问一句,你有什么新发现吗,如果你有发现了什么,记得点个赞,评论下写心得,分享给朋友,谢谢!抽象和接口的是如何使用的,还有就是抽象和接口的区别,重点可参考《疯狂Java讲义》:什么是重载方法,抽象是单重继承,而接口是多重继承。

注意事项
1

如果读者还有什么不懂的地方,请留言;

2

如果读者觉得此经验很有用,请点赞;

3

如果读者认为此经验有帮助,请投票。

4

以上某动作都可以给笔者更加人气哦,谢谢你的支持!Thanks you!

推荐信息