父类引用指向子类对象指的是:
例如父类Animal,子类Cat,Dog。其中Animal可以是类也可以是接口,Cat和Dog是继承或实现Animal的子类。
Animal animal = new Cat();
即声明的是父类,实际指向的是子类的一个对象。
那这么使用的优点是什么,为什么要这么用?可以用这几个关键词来概括:多态、动态链接,向上转型
也有人说这是面向接口编程,可以降低程序的...
分类:
编程语言 时间:
2015-05-31 09:23:08
阅读次数:
264
多态存在的三个必要条件一、要有继承;二、要有重写;三、父类引用指向子类对象。代码部分:class A { public String show(D obj) { return ("A and D"); } public String show(A obj) { ...
分类:
编程语言 时间:
2015-05-28 19:49:34
阅读次数:
173
C#&C++多态问题简析在学习C#面向对象时,对封装和继承基本上还是理解的,但是碰到多态,基本上就是记住了个父类引用指向子类对象,在很长时间内也是一直比较困惑。学习c++时,基本上算是有了一定了解。下面结合代码解释多态问题首先是c#代码using System;using System.Collec...
分类:
其他好文 时间:
2015-05-24 21:39:36
阅读次数:
113
抽象类:具有抽象方法的类,需要使用abstract关键字修饰
关系图
下面上代码
package com.ray.testobject;
/**
* 抽象类
*
* @author ray
* @since 2015-05-02
* @version 1.0
*
*/
public abstract class Perso...
分类:
编程语言 时间:
2015-05-02 22:06:19
阅读次数:
211
先贴上代码
package com.ray.object;
/**
* 父类引用子类对象
*
* @author ray
* @since 2015-04-30
* @version 1.0
*
*/
public class Test {
class Person {
public void say() {
System.out.println("i...
分类:
其他好文 时间:
2015-04-30 10:37:18
阅读次数:
106
① 什么是多态? 多态(polymorphism)是具有表现多种形态的能力的特征。同一个实现接口,使用不同的实例而执行不同的操作② 什么是向上转型?语法要求是什么? 1、 将一个父类的引用指向一个子类对象,称为向上转型(upcasting),此时通过父类引用变量调用的方法是子类覆盖或继承父类的方法,...
分类:
编程语言 时间:
2015-04-27 23:05:39
阅读次数:
109
多态的存在有三个必要条件:1.要有继承2.要有重写3.父类引用指向子类对象 1 class Animal { 2 private String name; 3 Animal(String name) {this.name = name;} 4 5 public void enjoy...
分类:
编程语言 时间:
2015-04-22 00:15:29
阅读次数:
128
/* 一、多态:多态是指一个事物的多种存在状态(一个事物的多种体现形态或者一个事物的多种表现形态) 1、多态的体现: 多态在代码中的体现为:父类引用指向了子类对象 即 父类 a = new 子类(); 2、多态的前提: 1,类与类之间必须存在关系,要么是继承,要么是实现(类实现接口,接口...
分类:
编程语言 时间:
2015-03-20 18:29:13
阅读次数:
149
JAVA多态
一、相关的类结构
class A ...{
public String show(D obj)...{
return ("A and D");
}
public String show(A obj)...{
return ("A and A"...
分类:
编程语言 时间:
2015-03-04 01:07:51
阅读次数:
144
1、方法重载与覆盖的区别?( Overload与Override的区别)答: 方法的重载属于编译时多态,方法名相同参数列表不同,返回值必须相同或都没有返回值类型。方法的覆盖属于运行时多态,子类覆盖父类的方法,子类指向父类引用,在调用方法的时候用父类的引用调用。2、String 和StringBuff...
分类:
移动开发 时间:
2015-02-06 13:08:51
阅读次数:
223