zoukankan      html  css  js  c++  java
  • java内存图

    学习java已有半个月,画了简单的内存图,多指教

    //猫类

    public class Cat extends Animal{
      //Method
      public void eat(){
        System.out.println( "猫吃鱼" );
      }

    }

    //狗类

    public class Dog extends Animal{
      //Method
      public void eat(){
      System.out.println( "狗吃肉" );
      }
    }

    public class Person{
    // 养狗
      public void feed(Dog d){
        d.eat();
    }

    // 养猫
    public void feed(Cat c){
      c.eat();
      }
    }

    /** 思路:
    * 一个人要养宠物,有好多种,老是换宠物养.
    * 要求,尽可能少的改动代码,实现不同动物之间切换
    *
    * Client.class
    * Person.class
    * Animal.class
    * Dog.class
    * Cat.class
    *
    * method-->feed(写在哪里,人还是具体的动物里面)
    *
    * 方法调用的多态:
    * 方法的形参是父类的引用,但是实际传值是子类的对象
    *
    */
    public class Client{
      public static void main(String[] args){
      Person p = new Person();
      Dog d = new Dog();
      Cat c = new Cat();

      //Animal a = new Animal();
      //Animal a = new Dog();//父类的引用指向子类的对象

      p.feed(d);//方法的形参和实参也可以多态,形参声明的时候是父类的引用,但是实参传值的时候是子类对象的吧
      p.feed(c);


      }
    }

  • 相关阅读:
    jdk版本切换
    Java开发中遇到的问题
    递归删除文件夹
    重写equals方法
    JSP基础
    js把变量转换成json数据
    myBatista批量查询和插入
    Jquery密码强度校验
    Linux配置外网访问mysql
    linux下开启、关闭、重启mysql服务命令
  • 原文地址:https://www.cnblogs.com/xcxcxc/p/4364033.html
Copyright © 2011-2022 走看看