`
lanceverw
  • 浏览: 44207 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

多态笔记

阅读更多

多态分为静态多态性动态多态性

静态多态性---两个函数名称相同,函数签名不同。

   静态多态性又有三种情况:1.参数个数不同;2.参数个数相同,类型不同;3.个数和类型均相同,但出现顺序不同。

   例:

 

public class Customer {
    
    /**
    * 函数的静态多态性
   */
    private String account;
    private String password;
    
    //无参构造函数
    public Customer(){}
    
    //带有两个参数的构造函数
    public Customer(String account, String password){
        this.account=account;
        this.password = password;
    }
}

 

 

动态多态性:

//动态多态性一般在继承时使用

//抽象类Person
abstract class Person{
    public abstract void printInfo();
}

//继承Person类的Student类
class Student extends Person{
    public void printInfo(){
        System.out.println("学生打印");
    }
}

//继承Person类的Teacher类
class Teacher extends Person{
    public void printInfo(){
        System.out.print("老师打印");
    }
}

//测试类--根据传入print()函数不同的参数值来决定答应谁
public class PrintTest{
    public static void print(Person person){
        person.printInfo();
    }

    public static void main(String[] args){
         print(new Teacher());
    }
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics