Java多态概述
多态
所谓多态,实际上就是一个对象的多种状态;
下面例子中,Tiger可以看做Tiger,也可以看做Animal
Cat 可以看做Cat,也可以看做Animal
Dog 可以看做Dog,也可以看做Animal
示例代码:
package com.java1995;
//创建一个Animal类
public class Animal {
	public void showMe(){
		System.out.println("我是动物");
	}
}
package com.java1995;
//创建一个Tiger类,继承Animal类,并对其showMe()方法进行重写
public class Tiger extends Animal {
	public void showMe(){
		System.out.println("我是老虎");
	}
}
package com.java1995;
//同上,Cat类,继承Animal类,重写方法
public class Cat extends Animal {
//	public void showMe(){
//		System.out.println("我是猫");
//	}
}
package com.java1995;
//同上,Dog类,继承Animal类,重写方法
public class Dog extends Animal {
	public void showMe(){
		System.out.println("我是狗");
	}
}
package com.java1995;
//创建测试类,演Java语言的多态性,Tiger,Cat,Dog类
public class Test {
	public static void main(String [] args){
Animal a=new Animal();
	a.showMe();
//创建Tiger类的两种方法
	Tiger t=new Tiger();        //第一种
	t.showMe();
Animal t2=new Tiger();    //第二种,Tiger属于Animal类,也属于Tiger类
	t2.showMe();
Animal c=new Cat();
	c.showMe();
Animal t3=new Tiger();
	showMe(t3);
	Test.showMe(t);
}
//创建一个showMe的静态方法,整合上面a.showMe(); ps:可不写
	public static void showMe(Animal a){
		a.showMe();
	}
}
Java多态概述的更多相关文章
- java多态概述特点转型I
		1 package face_09; 2 3 import com.sun.jdi.Method; 4 5 /* 6 * 对象的多态性. 7 * class 动物 8 * {} 9 * 10 * cl ... 
- Java 面向对象概述原理: 多态、Object类,转型(8)
		Java 面向对象概述原理: 多态.Object类,转型(8) http://docs.oracle.com/javase/tutorial/java/IandI/override.html Java ... 
- 第1章 Java语言概述--HelloWorld--环境搭建
		SE学什么 第1章 Java语言概述 第2章 基本语法 第3章 数组 第4章 面向对象编程(上) 第5章 面向对象编程(中) 第6章 面向对象编程(下) 第7章 异常处理 第8章 枚举类&注解 ... 
- Java多线程-Java多线程概述
		第一章 Java多线程概述 线程的启动 线程的暂停 线程的优先级 线程安全相关问题 1.1 进程与线程 进程:可以将运行在内存中的程序(如exe文件)理解为进程,进程是受操作系统管理的基本的运行单元. ... 
- 【Java基础】Java 语言概述
		Java 语言概述 主要应用场景 JavaEE.大数据.Android 开发方向. 基础知识概述 编程语言核心结构 变量.基本语法.分支.循环.数组.- Java 面向对象的核心逻辑 OOP.封装.继 ... 
- Java Annotation概述
		@(Java)[Annotation|Java] Java Annotation概述 用途 编译器的相关信息,如用于检测错误和一些警告 编译时和部署时的处理,如一些软件用于自动生成代码之类的 运行时处 ... 
- 《java集合概述》
		JAVA集合概述: Collection: |---List有序的:通过索引就可以精确的操作集合中的元素.元素是可以重复的. List提供了增删改查的动作. 增加add(element) add(in ... 
- Java的概述以及语法
		Java的语法分为标示符和数据类型 Java的概述: 一些手打的: long l = 12345; //隐式转换 int a = (int)121234567L; //强制转换 float f =12 ... 
- Java 多态——与C++的比较
		学习了Java和C++之后,由于长期不使用C++,而java的基础知识掌握不牢,现在已经搞不清java多态了.现在先来谈谈java多态,稍后有时间再更新C++的多态,并进行比较~ 一. Java的多态 ... 
随机推荐
- css实现table中td单元格鼠标悬浮时显示更多内容
			table中,td单元格无法显示下全部内容,需要在鼠标hover时显示全部内容. 正常显示样式: 鼠标hover时: html: <td>displayAddress<span cl ... 
- python基础教程1:入门基础知识
			写在系列前,一点感悟 没有梳理总结的知识毫无价值,只有系统地认真梳理了才能形成自己的知识框架,否则总是陷入断片儿似的学习-遗忘循环中. 学习方法真的比刻苦"傻学"重要多了,而最重要 ... 
- C# 登录窗口的设计技巧
			记得很久之前要用C#做个需要登录的小东西,自己之前完全没有编写WinForm的经验,整个过程中,自己感觉应该怎么写就怎么写,时常导致许多逻辑性的错误,比如在做这个登录窗口的时候,应该实现的效果是,用户 ... 
- BZOJ 3167: [Heoi2013]Sao
			3167: [Heoi2013]Sao Time Limit: 30 Sec Memory Limit: 256 MBSubmit: 96 Solved: 36[Submit][Status][D ... 
- 【bzoj2434】 Noi2011—阿狸的打字机
			http://www.lydsy.com/JudgeOnline/problem.php?id=2434 (题目链接) 题意 给出一个字符串,$P$表示输出,$B$表示退格.$m$组询问$(x,y)$ ... 
- hdu 1789 Doing HomeWork Again (贪心算法)
			题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1789 /*Doing Homework again Time Limit: 1000/1000 MS ... 
- SSM框架的搭建与测试
			关于框架的搭建无非就是 框架所依赖的jar包,然后就是关于各个框架的配置文件: 下面我们来看下不同层的依赖的jar包以及各个配置文件: 首先pojo这一层只需要依赖parent聚合工程 mapper层 ... 
- Hadoop生态圈-Flume的组件之自定义Sink
			Hadoop生态圈-Flume的组件之自定义Sink 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客主要介绍sink相关的API使用两个小案例,想要了解更多关于API的小技 ... 
- timer.Interval用法简介
			这个东东呢是我在做windows服务的时候碰到的,总结了一下她的用法,如下: 一.指定时间间隔 写一个每隔一分钟就执行一次的吧 public partial class PSJCService : S ... 
- eclipse启动tomcat内存溢出的解决方式
			eclipse启动tomcat内存溢出的解决方式 ——IT唐伯虎 摘要:eclipse启动tomcat内存溢出的解决方式. 1.打开Run Configurations 2.在VM arguments ... 
