创建Rodent(啮齿动物):Mouse(老鼠),Gerbil(鼹鼠),Hamster(大颊鼠)等的的一个

继承分级结构。在基础类中,提供适用于所有Rodent的方法,并在衍生类中覆盖它们,从而根据不同类型的Rodent采取不同的行动。创建一个Rodent数组,在其中填充不同类型的Rodent,然后调用自己的基础类方法,看看会有什么情况发生。

解决方法: 
package com.tangle.polymorphic; 
class Rodent { 
void nightAction(){ 
System.out.println("Rodent.neghtAction()"); 


class Mouse extends Rodent { 
void nightAction(){ 
System.out.println("Mouse.nightAction()"); 


class Gerbil extends Rodent { 
void nightAction(){ 
System.out.println("Gerbil.nightAction()"); 


class Hamster extends Rodent { 
void nightAction(){ 
System.out.println("Hamster.nightAction()"); 


public class RodentTest { 
public static void main(String[] args) { 
Rodent[] rt = new Rodent[4]; 
rt[0] = new Rodent(); 
rt[1] = new Mouse(); 
rt[2] = new Gerbil(); 
rt[3] = new Hamster(); 
for (Rodent rodent : rt) { 
rodent.nightAction(); 


}

转载于:https://www.cnblogs.com/JPAORM/archive/2012/05/19/2510288.html

java in think 多态问题相关推荐

  1. 12 Java面向对象之多态

    JavaSE 基础之十二 12 Java面向对象之多态 ① 多态的概念及分类 多态的概念:对象的多种表现形式和能力 多态的分类 1. 静态多态:在编译期间,程序就能决定调用哪个方法.方法的重载就表现出 ...

  2. java中的多态_Java中的多态

    多态与HoFs 朋友们好久不见啊,最近笔者同时在写脚本型语言--JavaScript,和工业级的面向对象语言--Java. 在写代码的同时呢,也会思考这些语言的不同.今天就拿 Java 中的多态,来谈 ...

  3. 何为Java 中的多态?

    Java 中的多态一般分为两种:重写式多态和重载式多态. 重载式多态,也叫编译时多态.也就是说这种多态再编译时已经确定好了.重载大家都知道,方法名相同而参数列表不同的一组方法就是重载.在调用这种重载的 ...

  4. java多态 降低代码耦合性_深度分析:理解Java中的多态机制,一篇直接帮你掌握!...

    Java中的多态 1 多态是什么 多态(Polymorphism)按字面的意思就是"多种状态".在面向对象语言中,接口的多种不同的实现方式即为多态.用白话来说,就是多个对象调用同一 ...

  5. Java学习之 多态 Polymorphism

    Java学习之多态 多态的概念 多态==晚绑定. 不要把函数重载理解为多态. 因为多态是一种运行期的行为,不是编译期的行为. 多态:父类型的引用可以指向子类型的对象. 比如 Parent p = ne ...

  6. Java基础之多态深入解析

    Java基础之多态深入解析 多态的基本概念 同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,这就是多态性.简单的说:就是用基类的引用指向子类的对象. 多态的优点 消除类型之间的耦合关系 ...

  7. java基础之多态的详细解释_JAVA基础之多态

    下面我为大家讲解一下JAVA基础之多态,希望大家喜欢. 多态就是事物存在的多种形态,比如你在大街上看见一只藏獒,你可以说这只藏獒真凶猛,也可以说这只狗真凶猛,还可以说这个动物真凶猛,以上三种说法其实都 ...

  8. 面向小姐姐的编程——JAVA面向对象之多态

    多态概述 什么是多态? 多种状态,同一对象在不同情况下表现出不同的状态或行为 比如你女朋友,会有多种表情,多种姿态,多种情绪,这都是多态. Java中实现多态的步骤 要有继承(或实现)关系 要有方法重 ...

  9. Java 面向对象:多态的理解

    Java 面向对象:多态的理解 一.多态的定义 一个对象的实际类型是确定的,但可以指向引用对象的类型可以有很多(父类,有关系的类) 操作符的多态 +可以作为算数运算,也可以作为字符串连接 类的多态 父 ...

  10. Java基础十一--多态

    Java基础十一--多态 一.多态定义 简单说:就是一个对象对应着不同类型. 多态在代码中的体现: 父类或者接口的引用指向其子类的对象. 1 /* 2 3 对象的多态性. 4 5 class 动物 6 ...

最新文章

  1. MegEngine基本概念
  2. java清空字符串_java面向对象,垃圾回收机制
  3. ZedGraph:一个同时支持WinForm和WebForm的开源图表控件(基于LGPL协议,.NET 2.0 C#源代码)...
  4. Linux基础-目录与路径
  5. oracle xe 最大连接数,解决Oracle XE报错ORA-12516(Oracle回话数超出限制)
  6. 迅雷使用积分制的真正作用和目的   [揭密迅雷]
  7. es6 Reflect对象的静态方法
  8. -[UIView hitTest:withEvent:] 方法总结
  9. 合并和排序 Linux 上的文件
  10. VBScript Sample:遍历文件夹并获取XML文件中指定内容
  11. Internet信息服务(IIS)管理器--IIS部署发布网站
  12. 小程序中集成赞赏功能
  13. Java虚拟机(JVM)学习合集
  14. runtime error python怎么解决_RuntimeError: Python is not installed as a framework 错误解决方案...
  15. 100个python算法超详细讲解:百钱百鸡
  16. c++实训 选猴子当大王
  17. 想进BAT一线互联网大厂,该怎么准备技术面试?一位6年老Android的面经总结(附300+面试题)
  18. layui的常用方法汇总——基础提升
  19. 【王道数据结构】思维导图--5.2二叉树的概念(高清)
  20. 5G应用场景300例 附下载地址

热门文章

  1. hdu3351 stack
  2. UnsupportedClassVersionError 错误解决办法
  3. [转载] 应用于负载均衡的一致性哈希及java实现
  4. JDBC 笔记4 PreparedStatement 与Statement 的区别
  5. jquery attr 设定src中含有(宏)符号的问题解决
  6. 2010年最新网络推广方式总结
  7. 【Java数据结构】赫夫曼树
  8. SHELL编程传递参数方法详解$# $* $0 $1 $2 $...
  9. Linux系统管理(8)——Ubuntu安装ssh服务 以及版本查看命令
  10. python语法(一)——判断字符串是否包含某子字符串