java中的接口interface
2015-02-08 17:13
369 查看
interface 是一种特殊的类,接口使得Java拥有了C++中多重继承的机制
1.interface类中的成员变量默认是且只能是public static final类型
2.interface类中的成员函数默认是且只能是public类型,且方法默认是abstract方法
3.类实现接口用implement关键字,接口可以继承接口用extends
4.接口类引用可以指向实现接口的子类对象,但是只能看到自己的抽象方法,不能看到子类自己的方法
测试代码:
1.interface类中的成员变量默认是且只能是public static final类型
2.interface类中的成员函数默认是且只能是public类型,且方法默认是abstract方法
3.类实现接口用implement关键字,接口可以继承接口用extends
4.接口类引用可以指向实现接口的子类对象,但是只能看到自己的抽象方法,不能看到子类自己的方法
测试代码:
interface Singer{ void sing(); void sleep(); } interface Painter{ void paint(); void eat(); } class Student implements Singer{ private String name; Student(String name){this.name = name;} public void study(){System.out.println("studying");} public String getName(){return name;} public void sing() {System.out.println("student is singing");} public void sleep(){System.out.println("student is sleeping");} } class Teacher implements Singer,Painter{ private String name; Teacher(String name){this.name = name;} public void teach(){System.out.println("teaching");} public String getName(){return name;} public void sing(){System.out.println("teacher is singing");} public void sleep(){System.out.println("teacher is sleeping");} public void paint(){System.out.println("teacher is painting");} public void eat(){System.out.println("teacher is eating");} } public class TestInterface{ public static void main(String args[]){ Singer s1 = new Student("le"); s1.sing();s1.sleep(); Singer s2 = new Teacher("kitian"); s2.sing();s2.sleep(); Painter p1 = (Painter)s2; p1.paint();p1.eat(); } }
相关文章推荐
- Java 学习笔记 (3) -抽象类 abstract 接口 interface 内部类 inner class 继承 extends 实现 implements 包 package
- 归纳Java中的Interface(接口)
- Java之旅(10)多态性 (续) & 接口(interface)
- java例程练习(接口interface)
- java例程练习(接口interface)
- 归纳Java中的Interface(接口)
- 【Java基础】——之抽象类(Abstract)与接口(Interface)
- JAVA interface 声明的interface variable (接口变量,也可称成员变量)是public static final
- java 接口interface的使用
- java 接口(Interface)与 抽象类(abstract class)
- JNDI Java的目录和命名接口(JAVA NAMING AND DERECTORY INTERFACE)
- java interface接口和多继承
- Java中的接口(interface)
- JNDI(Java Naming and Directory Interface,Java命名和目录接口)
- Java中接口(interface)和匿名类
- 温习Java笔记(7):接口interface小记
- java 中的接口(interface)
- Java中的接口(interface)
- 详细解析Java中抽象类和接口的区别 abstract class和interface
- Java接口Interface与抽象类Abstract Class