`
新建文件夹.zip
  • 浏览: 6449 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
最近访客 更多访客>>
社区版块
存档分类
最新评论

接口的使用

阅读更多
      在定义类的时候,我们知道类是所有对象所共有的属性和方法的定义。比如对于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();
//实例化接口,会报错
}
}
      除了普通类和接口,还有一种类称为抽象类。抽象类是介于普通类和接口之间的一种类,它既可以定义普通方法,也可以定义抽象方法,起到一个过度的作用。需要注意的是,抽象类同样不能实例化。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics