多态是设计上的一个术语。(polymorphism)
在Java里,多态是指以下语法现象:
重载OVerload:方法允许重名;
重写Override:允许子类重写父类方法;
泛型(模版):比如ArryList;

子类与父类的类型转换
1.子类转成父类:
ApplePie p1=new ApplePie();
Pie p2=p1; //类型转换:ApplePie->Pie
2.父类转成子类类型:
ApplePie p3=(ApplePie)p2;
注意:这个有时可以,有时不可以,这里可以是因为p2实际指向的对象是ApplePie,所以可以转换。

如何理解多态

如下所示:

Child.java

package my;public class Child extends Human
{int a;int b;public void information() {System.out.println("The Child a is "+a+", b is "+b);}}

HelloWorld.java

package my;public class HelloWorld
{public static void main(String[] args){        Child a=new Child();Human b=a;a.information();b.information();Human c=new Child();c.information();Object d=new Human();}}

Human.java

package my;public class Human
{public int weight;public int height;public void information() {System.out.println("Human weight is "+weight+", height is "+height);}
}

运行结果如下:

所有对象都是Object
所以:Object x=new MyVideoFile()

Java基础入门笔记-多态相关推荐

  1. Java基础入门笔记2

    Java基础入门笔记2 一. 为什么把程序出错叫做"BUG"? 1. 原因是臭虫或者虫子,现在用来指代电脑系统或者程序中隐藏的一些漏洞或者一些问题,所以现在程序出问题就叫" ...

  2. Java基础入门笔记-数组链表

    数组链表ArrayList ArrayList是JDK自带的基础工具类. java.util.ArrayList 也是一个容器(里面存放对象) 1.添加对象add: 2.删除对象remove: 3.遍 ...

  3. Java基础入门笔记-链表与容器

    容器(Container):存储对象的东西. 容器是一个设计上的术语,不是一个语法概念. 比如数组,就是一个容器 数组容器 缺点: 1.容量固定,无法扩展.既不能射太大,也不能太小,很难确定. 2.插 ...

  4. Java基础入门笔记-随机数

    Random类是JDK里自带的基本类. java.util.Random 使用Random可以生成随机数: Random rand=new Random(); int s=rand.nextInt(1 ...

  5. Java基础入门笔记-包装类

    包装类 在Java里面,每一个基本类型都对应一个包装类型 long Long int Integer short Short byte Byte double Double float Float b ...

  6. Java基础入门笔记-静态方法

    方法有两类: 1.该方法与类的关系不大.随便拷贝到别的类里面也仍然可以运行,没有语法错误: 2.该方法与类关系密切.如果拷贝到别的类里就失去意义,有语法错误: 一个严格的判断:该方法有没有访问this ...

  7. Java基础入门笔记-添加包

    包:package 当一个项目中的类越来越多时,需要对其进行分包管理. 例如与Amazon和Tencent共同开发一个项目,那么就可以简历三个package com.amazon con.tencen ...

  8. Java基础入门笔记-单根继承

    查看类的继承链 右键然后 Quick Type Hierarchy 如下图所示: 我们发现: 在java中如果一个类没有指定父类,则他默认父类就Object.(这里感觉和Qt有相同的东西,但又不同) ...

  9. Java基础入门笔记-构造方法的继承

    代码如下所示: Child.java package my;public class Child extends Parent {public Child() {System.out.println( ...

最新文章

  1. 剑指 offer set 23 n 个骰子的点数
  2. object getkey java_Java S3Object.getKey方法代码示例
  3. Libra教程之:move语言的特点和例子
  4. hdu 4414 Finding crosses
  5. 【原】使用Bmob作为iOS后台开发心得——查询关联关系(BmobRelation)
  6. 等比例缩放图片-opencv
  7. 离线缓存之RNCachingURLProtocol解析
  8. [Python] L1-001. Hello World-PAT团体程序设计天梯赛GPLT
  9. 网络不稳定的原因_原来网络不稳定,也有可能是这个原因造成的!
  10. NHibernate中Example类使用注意事项
  11. unity通过脚本获取一个物体的所有子物体孙子物体.....并从里面找到有动画的物体
  12. ionic 插件安装
  13. 学生信息管理系统V2.0
  14. 学习Python第5天
  15. 王者荣耀怎么投屏到电脑屏幕上
  16. wm_concat(column)结果为clob的解决办法
  17. 材料科学与工程跟计算机,材料科学与工程中的计算机应用
  18. 漫水算法原理及其实现
  19. ctf_BUUCTF_web(1)
  20. 安装Oracle数据库(Oracle 数据库的安装和使用指导)

热门文章

  1. [原创]性能测试之“Windows性能监视器”
  2. 局域网聊天 一个十分热门的话题
  3. 歪批IT系列之“伪热门”人才
  4. 2022年,我只做 3 件事
  5. 《web前端课堂》正式上线啦!
  6. r语言 xmlto html,使用R语言将XML转换为CSV(示例代码)
  7. php类和对象-作用,php 类和对象
  8. 12v电流表的正确接法_滑动变阻器的分压与限流接法
  9. python模块下载连接清华镜像的具体步骤_anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror...
  10. 最简易上手的numpy学习笔记二