interface Person {
public void fun1();
}
class Student implements Person {
public void fun1() {
System.out.println("Studnt Class fun1()");
}
public void fun2(){
System.out.println("Student Class fun2()");
}
}
public class InterfaceApplianceDemo {
public static void hehe(Person p){
p.fun1();
//利用接口实例化对象,对象p只能调用在接口中实现的实例化函数。。如p.fun2();会报错
// p.fun2();
//可以将p强制转换为p2对象,使得可以用p2调用fun2()函数
Student p2 = (Student)p;
p2.fun2();
}
/*
* 说明接口和它的实现类可以相互转化
*/
public static void haha(Student s){
Person p = (Student)s;
p.fun1();
//不可以
//p.fun2();
}
public static void main(String[] args) {
Person p = new Student();//接口对象实例化,对象的多态性
p.fun1();
//利用接口实例化对象,对象p只能调用在接口中实现的实例化函数。。如p.fun2();会报错
// p.fun2();
//可以将p强制转换为p2对象,使得可以用p2调用fun2()函数
Student p2 = (Student)p;
p2.fun2();
}
}