java 第38节 接口的实现

2016-06-29

1 接口的实现
class 类名 implements 接口1,接口2,接口3{
方法1(){
}
方法2(){
}
...
}

接口实现的注意实现:
1、为接口中所有的方法提供具体的实现。
2、必须遵守重写的所有规则。
重写规则:
1、子类的重写方法不能抛出更大的异常。
2、子类的重写方法不能有更小的访问范围。
父类:public void test();
子类:public void test();对
protected void test();错
3、保持相同的返回类型。

多继承也就是继承多个接口
1、这些接口之间需要使用逗号来分隔开。
2、如果这几个接口都有相同的方法,相同的变量,
那么相同的变量可以通过接口名.变量名 的形式来访问,
相同的方法将被其中一个接口使用。

一、定义接口

package com.java1995;
/**
 * 定义接口:学生
 * @author Administrator
 *
 */
public interface Student {
    int banji=1201;//班级编号

    String name="小明";
    void learn();//学习方法
    void eat();//吃饭方法
    void sleep();//睡觉方法

}
package com.java1995;
/**
 * 定义接口:人
 * @author Administrator
 *
 */
public interface People {
    String name="老王";

    void learn();//学习方法
    void eat();//吃饭方法
    void sleep();//睡觉方法

}

二、实现接口

package com.java1995;
/**
 * 实现接口
 * 多继承:继承多个接口
 * @author Administrator
 *
 */
public class Student1 implements Student,People {

    @Override
    public void learn() {
        // TODO Auto-generated method stub
        System.out.println("学生正在学习!");

    }

    @Override
    public void eat() {
        // TODO Auto-generated method stub
        System.out.println("学生在吃饭!");

    }

    @Override
    public void sleep() {
        // TODO Auto-generated method stub
        System.out.println("学生在吃饭!");

    }

}

三、调用接口

package com.java1995;
/**
 * 调用接口
 * @author Administrator
 *
 */
public class TestStudent {
    public static void main(String[] args) {
        Student1 stu=new Student1();
        stu.learn();
        stu.eat();
        stu.sleep();

        //public static final
        // stu.banji=1; 验证是final类型
        System.out.println(Student1.banji);

        System.out.println(Student.name+":"+People.name);
    }    

}

【参考资料】

[1] Java轻松入门经典教程【完整版】

时间: 2024-10-12 19:38:58

java 第38节 接口的实现的相关文章

java 第39节 接口的应用

2016-06-29 1 方法的修饰符 接口中变量的修饰符:public static final 接口中方法的修饰符:public abstract package com.java1995; /** * 1.定义接口:打印 * @author Administrator * */ public interface Modifier { /** * 均等价于public abstract void 方法名 */ void print(); public void print1(); abstr

java 第37节 接口概述

2016-06-29 1 接口概述 abstract class 抽象类的修饰符 interface 接口的修饰符 extends 只能是一个 implements 可以是多个 接口只有抽象方法,它比抽象类还要抽象,接口是彻彻底底的抽象! 接口是抽象方法和常量的属性集合. 接口中只能包含抽象方法和常量,不能改有变量.初始化块.构造器. 注意事项: 1,接口的修饰符只有两种:默认和public 2,接口内的变量会被设置成共有的.静态的和最终的字段. 3,接口内只有抽象方法和常量的属性集合. int

Effective Java 第三版——38. 使用接口模拟可扩展的枚举

Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化. 在这里第一时间翻译成中文版.供大家学习分享之用. 38. 使用接口模拟可扩展的枚举 在几乎所有方面,枚举类型都优于本书第一版中描述的类型安全模式[Bloch01]. 从表面上看,一个例外涉及可扩展性,这在原始模式下是可能的

利用ApiPost一键、快速生成接口文档!女猿也过38节!

对于我们这些程序员和程序媛来讲,最头疼的莫过于写文档. 我们可都是正个八经的理工校草和理工女神,研究github.逛逛csdn.写hello world是才我们的拿手菜,写文档是文科生的事情好不啦?(手动吐哇吐) 今天,教大家一个妙招:利用ApiPost一键.快速生成接口文档! 妈妈再也不用担心自己女孩纸们没有时间过38节啦! 当女程序媛遇到问题,那就不是问题 ApiPost简介: ApiPost是一个支持团队协作,并可直接生成文档的API调试.管理工具.它支持模拟POST.GET.PUT等常见

Java学习笔记之接口

一.接口的概念与定义 首先考虑一个简单的接口的定义: public interface Output { int MAX_LINE = 40; void out(); void getData(String msg); } 定义接口使用关键字interface 修饰符interface前面的public可以省略,如果省略,则采用默认访问控制,即只有在相同包结构的代码才可以访问此接口 接口不可以有构造方法(区别于类中的构造方法) 接口里面的所有成员,包括常量.方法等都是public访问权限,所以在

2.35 Java基础总结①抽象②接口③设计抽象类和接口的原则④接口和抽象类的区别

java基础总结①抽象②接口③设计抽象类和接口的原则④接口和抽象类的区别 一.抽象 abstract作用:不能产生对象,充当父类,强制子类正确实现重写方法和类相比仅有的改变是不能产生对象,其他的都有,包括构造.属性等等任何一个类只要有一个抽象的方法就成了抽象类 抽象方法 public abstract A();①方法是抽象的,这个类也是抽象的:②子类必须重写抽象方法,除非子类也是抽象类 抽象类可以没有抽象方法,但一般不这么设计 二.接口 interface 接口也是Java的一种引用数据类型(J

【翻译】JAVA中抽象类和接口的区别

不知道有没有人翻译过了,这篇是挺简单的,权当复习一遍内容吧. 很多常见的面试问题如"抽象类和接口有什么区别","你在什么时候用抽象类什么时候用接口".所以在这篇文章里面,我们会讨论一下这个话题. 在开始讨论它们的区别之前,我们先看看它们的介绍. Abstract class 抽象类 抽象类被用来抽象出子类的共同特征.它是不能被实例化的,它只能被子类继承作为超类使用.抽象类被用作它的子类下的层次结构创建模板(Abstract classes are used to c

C++虚函数virtual,纯虚函数pure virtual和Java抽象函数abstract,接口interface与抽象类abstract class的比较

由于C++和Java都是面向对象的编程语言,它们的多态性就分别靠虚函数和抽象函数来实现. C++的虚函数可以在子类中重写,调用是根据实际的对象来判别的,而不是通过指针类型(普通函数的调用是根据当前指针类型来判断的).纯虚函数是一种在父函数中只定义而不实现的一种函数,不能用来声明对象,也可以被称为抽象类.纯虚函数的实现也可以在类声明外进行定义.C++中的抽象类abstract class是指至少有一个纯虚函数的类,如果一个类全部由纯虚函数组成,不包括任何的实现,被称为纯虚类. Java中的普通函数

Java命名和目录接口——JNDI

JNDI即Java命名和目录接口(JavaNaming and Directory Interface),它属于J2EE规范范畴,是J2EE的核心技术之一,提供了一组接口.类和关于命名空间的概念.JDNI是provider-based技术,它暴露一个API和一个服务供应接口(SPI).它将名称和对象联系起来,使我们可以用名称访问对象.我们可以把JNDI简单地看成是里面封装了一个name到实体对象的映射,通过字符串可以方便得到想要的对象资源,例如JDBC.JMail.JMS.EJB等.这意味着任何