在定义类的时候,我们知道类是所有对象所共有的属性和方法的定义。比如对于Student类,它定义了所有对象(如大学生,中学生及小学生)的属性(比如姓名,学分及年龄)和方法(比如学习方法)。但是,对于不同的对象,它们所使用的方法是不同的,所以我们必须去重写父类中的方法。这个时候,我们就需要用到接口。
接口,就是一个非常抽象的类,比如我们定义的Student类。它有一个学习方法,但是没有具体的方法体。定义接口的格式如下:
public interface + 类名
{
//代码
}
接口作为一个类,自然有它的属性和方法,主要有以下几个特点:
1.接口中的方法必须是抽象的方法,没有方法体,即没有大括号。
2.接口中的属性必须是公共的,必须是常量且赋初值。
比如我们定义一个Student接口,代码如下:
public interface Student
{
//属性
public final static String name = "";
//final static可以加也可以不加,如果不加是默认加上的
public int age = 10;
//方法
public void study();
public abstract eat();
//abstract可以加也可以不加,如果不加也是默认加上的
}
接口的作用就是充当一个父类,告诉子类必须要做什么事情,但是这件事情怎么做,是由子类自己去实现的。子类继承接口的关键字是implements,需要注意的是,必须实例化父类中所有的抽象方法。这是因为子类是普通类,普通类是不能存在抽象方法的。同时需要注意的是,接口是不能被实例化的。以下的代码都是会报错的:
public abstract class UnStundent implements Student
{
public void study(){}
//实例化了study方法,但是没有实例化eat方法,会报错
}
public class Manager
{
public static void(String [] args)
{
Student st = new Student();
//实例化接口,会报错
}
}
除了普通类和接口,还有一种类称为抽象类。抽象类是介于普通类和接口之间的一种类,它既可以定义普通方法,也可以定义抽象方法,起到一个过度的作用。需要注意的是,抽象类同样不能实例化。
分享到:
相关推荐
六合一综合平台,外挂系统接口使用手册.pdf
泛微工作流(WorkflowService)WebService接口使用说明
通过USB接口使用STARTER软件调试G120,详细介绍了USB口的设置,创建STARTER项目,在线模式基本调试,参数修改和备份下载及用STARTER调试其他功能。
RV1126_EVB_usb调试接口使用方法.docx
六合一综合平台-外挂系统接口使用手册.doc
金蝶K3基于WebServices外部数据交换接口使用指南讲述.pdf
泛微非常细的webservice接口开发说明,应用于泛微E8,E9版本,Ecology8、Ecology9的webservice开发文档
泛微非常细的webservice接口开发说明,应用于泛微E8,E9版本,Ecology8、Ecology9的webservice开发文档
全志T507开发资料
EditorTools ecshop2.7.3新商品接口使用手册 一、简介 1、本接口应用于ecshop商品管理频道添加新商品; 2、发布时请使用管理员用户帐号; 3、ecshop有utf8和GBK版本,请在发布规则中选择对应编码; 4、本接口基于...
在AMC-2C667X平台上使用FPGA的Aurora接口说明,针对平台用的V6芯片型号新建一个ISE工程,工程中加入Aurora IP核
飞狐 外汇 接口 使用说明 飞狐 外汇 接口 使用说明
C#接口使用的好处,例子中代码非常简单,主要是为了说明接口如何使用,以及使用后有什么好处。希望对初学者有用。
java接口使用实例源码
雷度生化仪使用说明,大部分HL7通讯协议如此,都差不多能用
php支付宝接口使用说明
最新版的微机接口使用教程书籍,看了很不错。
Creo 二次开发JAVA接口使用向导,说明书