zoukankan      html  css  js  c++  java
  • Java 多态

    多态

    1.引用的多态

    父类的引用指向本类的对象

    Animal obj1=new Animal();

    父类的引用指向子类 的对象

    Animal obj2=new Dog();

    2.方法多态

    本类方法:创建本类对象时调用的方法

    子类重写:创建子类对象时调用的方法

    引用类型转换

    1.向上类型

    由小到大 (无风险)

    Dog dog=new Dog();
    Animal animal=dog;

    2.向下类型

    由大转小 (溢出)

    Dog   dog=new Dog();
    Dog dog1=animal; // 报错

    3.利用instanceof 运算符解决风险问题

    抽象类:

    限制规定子类必须实现某些方法

    Telphone 父类(抽象类)

    public abstract class Telphone {
      public abstract void call();
      public abstract void sendmessage();
    }

    cellphone 类继承父类

    package demo3.com;

    public class cellphone extends Telphone {
      @Override
      public void call() {
          System.out.println("语音");
      }

      @Override
      public void sendmessage() {
          System.out.println("语音");
      }
    }

    smallphone 继承父类

    package demo3.com;

    public class smallphone extends Telphone {
      @Override
      public void call() {
          System.out.println("打电话");
      }

      @Override
      public void sendmessage() {
          System.out.println("发信息");
      }
    }

    测试类

    package demo3.com;

      public static void main(String[] args) {
          //抽象类的父类引用指向子类cellphone,调用方法
          Telphone tell =new cellphone();  
          tell.call();
          tell.sendmessage();
          //抽象类的父类引用指向子类smallphone,调用方法
          Telphone tell1=new smallphone();
          tell1.sendmessage();
          tell1.call();
      }
    }

    idea 在新建一个class的时候可以选择继承的父类

    1.把光标放在父类名称上按alt+enter可以生成子类

    2. 选中implement abstract class

    接口

    概念:

    接口可以理解为一种特殊的类,由全局常量和公共的抽象方法组成

    语法:

    [修饰符] interface 接口名 [extends 父接口] {

    }

     

  • 相关阅读:
    (Tree) 101. Symmetric Tree
    (String). Word Pattern
    (Array)121. Best Time to Buy and Sell Stock
    (Array)169. Majority Element
    记录一次工作问题总结——关于游戏物体渲染顺序
    C++——STL(算法)
    观察者设计模式
    二分查找——校招题
    排序算法——归并排序
    排序算法——堆排序
  • 原文地址:https://www.cnblogs.com/guangzhou11/p/9758916.html
Copyright © 2011-2022 走看看