抽象类和接口作为形式参数 多态 抽象类和接口虽然都不能直接创建对象,但是可以通过多态进行对象的创建

来源:互联网 发布:2017年python饱和了 编辑:程序博客网 时间:2024/06/05 03:37
/*抽象类和接口作为形式参数:抽象类:需要的是该抽象的类子类对象 接口:需要的是该接口的实现类(或者说子类也可行)对象//下面这句话一定要理解并记住://抽象类和接口虽然都不能直接创建对象,但是可以通过多态进行对象的创建...*///************抽象类作为形式参数***********abstract class Person {public abstract void study();}class PersonDemo {public void method(Person p) {//p; p = new Student();                                        //Person p = new Student(); //多态p.study();}}//定义一个具体的学生类class Student extends Person {public void study() {System.out.println("Good Good Study,Day Day Up");}}class PersonTest {public static void main(String[] args) {//目前是没有办法的使用的//因为抽象类没有对应的具体类//那么,我们就应该先定义一个具体类//需求:我要使用PersonDemo类中的method()方法PersonDemo pd = new PersonDemo();Person p = new Student();pd.method(p);}}//************接口作为形式参数***********//定义一个爱好的接口interface Love {public abstract void love();}class LoveDemo {public void method(Love l) { //l; l = new Teacher();                                       //Love l = new Teacher(); 多态l.love();}}//定义具体类实现接口class Teacher implements Love {public void love() {System.out.println("老师爱学生,爱Java,爱林青霞");}}class TeacherTest {public static void main(String[] args) {//需求:我要测试LoveDemo类中的love()方法LoveDemo ld = new LoveDemo();Love l = new Teacher();ld.method(l);}}