zoukankan      html  css  js  c++  java
  • 抽象类和接口作为返回值类型的问题

     1 /*
     2     返回值类型
     3         引用类型:
     4             类:返回的是该类的对象
     5             抽象类:返回的是该抽象类的子类对象
     6             接口:
     7 */
     8 abstract class Person {
     9     public abstract void study();
    10 }
    11 
    12 class PersonDemo {
    13     public Person getPerson() {
    14         //Person p = new Student();
    15         //return p;
    16         
    17         return new Student();
    18     }
    19 }
    20 
    21 class Student extends Person {
    22     public void study() {
    23         System.out.println("Good Good Study,Day Day Up");
    24     }
    25 }
    26 
    27 class PersonTest2 {
    28     public static void main(String[] args) {
    29         //需求:我要测试Person类中的study()方法
    30         PersonDemo pd = new PersonDemo();
    31         Person p = pd.getPerson(); //new Student();  Person p = new Student(); 多态
    32         p.study();
    33     }
    34 }

    抽象类作为返回值类型

    接口作为返回值类型

     1 /*
     2     返回值类型
     3         基本类型:
     4         引用类型:
     5             类:返回的是该类的对象
     6             抽象类:返回的是该抽象类的子类对象
     7             接口:返回的是该接口的实现类的对象
     8 */
     9 //定义一个爱好的接口
    10 interface Love {
    11     public abstract void love();
    12 }
    13 
    14 class LoveDemo {
    15     public Love getLove() {
    16         //Love l = new Teacher();
    17         //return l;
    18         
    19         return new Teacher();
    20     }
    21 }
    22 
    23 //定义具体类实现接口
    24 class Teacher implements Love {
    25     public void love() {
    26         System.out.println("老师爱学生,爱Java,爱林青霞");
    27     }
    28 }
    29 
    30 class TeacherTest2 {
    31     public static void main(String[] args) {
    32         //如何测试呢?
    33         LoveDemo ld = new LoveDemo();
    34         Love l = ld.getLove(); //new Teacher(); Love l = new Teacher(); 多态
    35         l.love();
    36     }
    37 }
  • 相关阅读:
    这段时间的总结以及未来一个月的计划
    通过配置文件构建XML
    利用汇编实现表驱动
    Intel汇编语言程序设计课后习题,6.5.5
    盲目地相信网上评价未必是好事
    ObjectiveC基础语法复习笔记
    IOS6.0 学习第1篇,基础的IOs框架
    IOS6.0 学习第2篇,弹出AlertView
    Android Fragment的使用(1)
    ObjecteiveC 属性修饰符
  • 原文地址:https://www.cnblogs.com/jiangjianzhu/p/5776226.html
Copyright © 2011-2022 走看看