`

Java接口与抽象类剖析

    博客分类:
  • Java
阅读更多
Java作为一个成熟的面向对象语言,在大型软件开发中起着很大的作用,在这样的大环境里占有一席之地。

而为了在多人合作乃至数十数百人合作的项目中避免设计上的不一致,也就是保证类在使用中的规范性,我们引入了接口的概念。

比如接口中有A方法,那么实现这个接口就必须实现A方法,这就人为地形成了一种规范,这也是所谓接口的意义。

那么,接口是如何定义的呢?

public interface 接口名{
//定义常量的语法格式:
public static final 数据类型  常量名   =   值;

//定义抽象方法的语法格式:
public 返回值类型   方法名(参数列表);
返回值类型   方法名(参数列表);
}

这就是接口的定义。我们要注意的是:
1.定义接口的关键字是interface。注意与类的不同,在新建接口的时候也要选择建立此类文件哦
2.接口中只能定义抽象的方法和常量。这就是以后其他接口或者类所要继承的东西
3.接口是可以继承接口的,并且可以同时继承多个接口。语法格式是:public interface 接口名 extends 接口名,......{}
4.接口默认的访问修饰符是public的。并且只有这一种,别的均会报错。
5.接口是一种特殊的类。这个不解释
6.接口中的抽象方法不能在接口中实现,所以不能使用{}结尾,只能使用;结尾。

接下来的问题是,接口我们已经定义好了,下一步就是实现接口的内容啦

public class 类名   implements  接口名,......{
//必须要重写接口中定义的所有方法,否则报错。
}

实现接口的时候我们同样需要注意一些必要的事项:
1.实现接口的关键字是implements 。这是特征也是要素
2.类只能继承一个父类(单根继承),类是可以同时实现多个接口的。
比如: public class 子类名   extends 父类名   implements 接口名,......{}
3.子类可以同时继承类,再实现多个接口,但是,反之则不可以。
4.接口的特点是,我们在接口中定义了多少个抽象方法,那么子类就必须要重写多少个的方法,也就是说所有的方法都要无条件重写哦。
5.实现接口的时候,接口中的常量是能被类继承到的。被继承的既然是全部框架,那么,常量也不例外。

有了接口,又有了类,那么,他们之间的区别在哪里呢?
1.接口与类的关键字不同
类 class  接口 interface
2.接口与类的方法不同
类 方法以{}结束,负责具体实现 接口 方法以;结束,只是抽象的形式
3.接口与类的继承方式不同
类只能继承一个父类,即单根继承 多个接口可以同时被一个类实现
4.接口与类的子类的继承内容不同
对于类,其子类既可以继承方法,也可以重写方法 但对于接口,子类必须重写所有的抽象方法

下面我们介绍Java中的抽象类

抽象类是介于接口和类之间的一种特殊类,该类既有接口的特性,又有类的特性。

他的定义方法如下:

public abstract class 抽象类名{
//可以定义类中所有的方法和属性。
//定义抽象方法,但是语法格式不同
public abstract 返回值类型 方法名(参数列表);
}
对于抽象类中的抽象方法,如果有类继承,那么,子类必须重写这些抽象方法 ,这和接口中的特点是相一致的。
抽象类在这里有很广泛的用途,他既可以继承类和抽象类,又可以去实现多个接口,这里的形式是:
public abstract class 抽象类  extends  父类名   implements 接口名,......{}
但是对于抽象类,它和接口一样,都是不可以实例化对象的,这一点只有类可以做到。

0
1
分享到:
评论

相关推荐

    java中接口与抽象类的详细分析与比较

    在Java编程语言中,接口(Interface)和抽象类(Abstract Class)都是用于实现多态性的关键...通过阅读"java中接口与抽象类的详细分析与比较.doc"文档,你将获得更深入的洞察和实践指导,进一步提升你的Java编程能力。

    Java抽象类与接口实验报告

    Java抽象类与接口实验报告

    详细解析Java中抽象类和接口的区别

    抽象类和接口的区别 在Java语言中, abstract class 和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的 面向对象能力。abstract class和interface之间在对于抽象类定义的支持...

    Java中抽象类和接口的区别

    在Java语言中,abstract class和interface 是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,...

    java期末复习抽象类与接口,内部类,知识点.zip

    复习时,可以详细阅读`Java抽象类.docx`来理解抽象类的定义、用途和实例化规则,通过`Java接口.docx`学习接口的定义、实现方式以及多继承的特点,`Java内部类.docx`将帮助你掌握不同类型的内部类及其应用场景。...

    实验5:Java抽象类与接口.doc

    Java 抽象类与接口实验报告 一、实验目的及要求 本实验的目的是掌握 Java 中的抽象类和接口的概念及其应用。通过本实验,学生将了解抽象类和接口的定义、特点及使用场景,并掌握如何使用抽象类和接口来描述不同的...

    java包与接口实验报告

    4)抽象图形用户接口包(javax.swing):实现了不同平台的计算机的图形用户接口部件,包括窗口、菜单、滚动条、对话框等,使得 Java可以移植到不同的平台。 接口解决了Java 不支持多重继承的问题,可以通过实现多个...

    Java语言中抽象类和接口的应用探究.pdf

    Java语言中抽象类和接口的应用探究 Java语言中抽象类和接口是两种机制,都是支持抽象类的,但它们之间...在本文中,我们将对抽象类和接口进行比较和分析,总结它们的异同点,以便读者设计出更加高效、强大的Java程序。

    教学视频-抽象类&接口

    7. **实际案例分析**:通过具体的编程示例,展示抽象类和接口在实际项目中的应用。 这个教学资源还提供在线支持和教学源码,这意味着学习者不仅可以观看视频,还可以动手实践,通过编写代码加深理解。对于初学者来...

    接口和抽象类使用详细实例源代码

    在编程世界中,接口(Interface)和抽象类(Abstract Class)是面向对象设计的...通过阅读和分析“接口和抽象类使用详细实例源代码”,开发者可以更好地掌握这两种重要概念,并将其应用到自己的项目中,提升软件质量。

    从战略角度对Java抽象类与接口的剖析.zip

    在Java编程语言中,抽象类和接口是两种重要的机制,它们用于实现代码的抽象和多态性,这对于软件设计和架构至关重要。从战略角度来看,理解并有效地利用它们能提升程序的可扩展性和维护性。本篇文章将深入探讨这两个...

    Java中抽象类与接口的比较.pdf

    Java 中抽象类与接口的比较 Java 语言中,抽象类(abstract class)和接口(interface)是两种支持抽象类定义的机制。抽象类和接口之间存在着许多相似性,但是也存在本质的区别。 一、 抽象类 在 Java 程序设计中...

    Java:使用抽象类定义一个“形状类”,能够计算周长和面积。

    在Java编程语言中,抽象类是一种特殊的类,它不能被实例化,但可以作为其他类的基类。在这个场景中,我们使用抽象类来定义一个"形状类",该类包含计算周长和面积的通用方法。这允许我们创建一个统一的接口,使得所有...

    Java中抽象类和接口的区别与联系.pdf

    "Java中抽象类和接口的区别与联系" Java中抽象类和接口是面向对象程序设计语言中两种不同的机制,都是支持类定义的方式。抽象类和接口之间在对于抽象类定义的支持方面具有很大的相似性,但它们之间还是有很大的区别...

    浅析高职教学之Java抽象类与接口.pdf

    本文对Java抽象类和接口的区别与联系进行了详细的分析,并着重讨论了如何在高职教学中讲授这些内容。文章首先介绍了Java抽象类和接口的概念,然后对它们之间的区别和联系进行了剖析,并举例阐述了如何在课堂中进行...

    浅析Java抽象类与接口的区别.zip

    理解并掌握Java中的抽象类与接口的区别,有助于开发者根据需求选择合适的设计模式,优化代码结构,提高代码的可维护性和扩展性。在实际开发中,往往需要结合使用抽象类和接口,以充分利用两者的优势,实现更灵活和...

    实例7 接口和抽象函数(java实例系列)

    在Java编程语言中,接口(Interface)和抽象类...通过分析这些代码,你可以更直观地了解接口和抽象类的区别和用法,加深对Java面向对象编程的理解。此外,还可以尝试修改或扩展这些示例,进一步巩固你的编程技能。

    Java抽象类与接口课程案例的教学设计.pdf

    Java抽象类与接口是编程语言Java中的核心概念,它们在软件设计中扮演着至关重要的角色。在Java课程中,理解并掌握抽象类和接口对于学习者来说至关重要,因为这两个概念帮助程序员实现代码的复用、模块化和扩展性。 ...

    从战略角度对Java抽象类与接口的剖析.pdf

    从战略角度对Java抽象类与接口的剖析.pdf

    Java接口和抽象类实例分析

    Java接口和抽象类是面向对象编程中两种重要的抽象机制,它们在实现代码的抽象和多态性方面扮演着关键角色。下面将详细分析这两种抽象形式的概念、用途和区别。 一、抽象类 抽象类是一种不能被实例化的类,它包含了...

Global site tag (gtag.js) - Google Analytics