重载、多态杂记

只有返回值不同而参数列表参数数量相同,idea会报错。

在这里插入图片描述

多态

public class testPoly {
    //多态
    class Shape{
        public void printIt(){
            System.out.println("this is a shape class");
        }
    }

    class Circle extends Shape{
        public void printIt(){
            System.out.println("this is a circle class");
        }
    }

    class Rect extends Shape{
        public void printIt(){
            System.out.println("this is a rect class");
        }
    }

    static void printIt(Object o){
        System.out.println("static object");
        if(o.getClass().isInstance(Shape.class)){
            System.out.println("static object shape");
        }
    }

    static void printIt(Shape shape){
        System.out.println("static shape");
    }

    static void printIt(Circle shape){
        System.out.println("static Circle");
    }

    static void printIt(Rect shape){
        System.out.println("static Rect");
    }

    public static void main(String[] args) {

        testPoly test = new testPoly();
        Shape shape1 = test.new Circle();
        Shape shape2 = test.new Rect();

        printIt(shape1);
        printIt(shape2);
    }
}

结果

D:\software\jdk11\bin\java.exe "-javaagent:D:\software\idea\IntelliJ IDEA 2021.1.1\lib\idea_rt.jar=60331:D:\software\idea\IntelliJ IDEA 2021.1.1\bin" -Dfile.encoding=UTF-8 -classpath D:\workspace\study\leetcodetest\out\production\leetcodetest testPoly
static shape
static shape

Process finished with exit code 0

编译时看左边,执行时看右边

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值