zoukankan      html  css  js  c++  java
  • 抽象类和接口作为形参问题

     1 /*
     2     形式参数: 4         引用类型
     5             类名:需要的是该类的对象
     6             抽象类:需要的是该抽象的类子类对象
     7             接口:
     8 */
     9 abstract class Person {
    10     public abstract void study();
    11 }
    12 
    13 class PersonDemo {
    14     public void method(Person p) {//p; p = new Student();  Person p = new Student(); //多态
    15         p.study();
    16     }
    17 }
    18 
    19 //定义一个具体的学生类
    20 class Student extends Person {
    21     public void study() {
    22         System.out.println("Good Good Study,Day Day Up");
    23     }
    24 }
    25 
    26 class PersonTest {
    27     public static void main(String[] args) {
    28         //目前是没有办法的使用的
    29         //因为抽象类没有对应的具体类
    30         //那么,我们就应该先定义一个具体类
    31         //需求:我要使用PersonDemo类中的method()方法
    32         PersonDemo pd = new PersonDemo();
    33         Person p = new Student();
    34         pd.method(p);
    35     }
    36 }

    抽象类作为参数类型

    接口作为参数类型

     1 /*
     2     形式参数:
     3         基本类型
     4         引用类型
     5             类名:需要的是该类的对象
     6             抽象类:需要的是该抽象的类子类对象
     7             接口:需要的是该接口的实现类对象
     8 */
     9 //定义一个爱好的接口
    10 interface Love {
    11     public abstract void love();
    12 }
    13 
    14 class LoveDemo {
    15     public void method(Love l) { //l; l = new Teacher();  Love l = new Teacher(); 多态
    16         l.love();
    17     }
    18 }
    19 
    20 //定义具体类实现接口
    21 class Teacher implements Love {
    22     public void love() {
    23         System.out.println("老师爱学生,爱Java,爱林青霞");
    24     }
    25 }
    26 
    27 class TeacherTest {
    28     public static void main(String[] args) {
    29         //需求:我要测试LoveDemo类中的love()方法
    30         LoveDemo ld = new LoveDemo();
    31         Love l = new Teacher();
    32         ld.method(l);
    33     }
    34 }
  • 相关阅读:
    组合数,错排——HDU-2049
    欧拉函数——POJ-2480
    欧拉函数——HYSBZ
    数论——HYSBZ
    cordova js调用原生
    Backbone js 学习
    最优二叉搜索树 java实现 学习 备忘
    chrome允许加载本地文件
    IOS、Android html5页面输入的表情符号变成了乱码”???“
    创建第一个android应用
  • 原文地址:https://www.cnblogs.com/jiangjianzhu/p/5776098.html
Copyright © 2011-2022 走看看