`
清风_夕瑶
  • 浏览: 53828 次
  • 性别: Icon_minigender_1
  • 来自: 潘多拉星球
社区版块
存档分类
最新评论

多态解疑

阅读更多

面试时,遇到子类对父类重写,但方法参数是这样的父类:test(Parent p),子类中test(Child c).子类在调用是c.test(p),,一时难以断定是子类是否重写了父类的方法。想想参数不一样,不应该是重写;反过来,但子类也是父类啊。难以断定,算了不是复写,先碰碰运气,回去后测试一下。回来后,测试了一下,还真不是复写,对多态算是又掌握了一些。

附上测试代码

class MyParent{
	int x, y;
	public MyParent(int x,int y){
		this.x = x;
		this.y = y;
	}
	public void test(MyParent my){
		System.out.println("-------父------");
		System.out.println(my.x+"----"+my.y);
	}
}
class MyChild extends MyParent{
	int z;
	public MyChild(int x, int y,int z) {
		super(x, y);
		this.z = z;
	}
	public void test(MyChild my){
		System.out.println("-------子------");
		System.out.println(my.x+"---"+my.y);
	}
	public static void main(String[] args) {
		MyParent p = new MyParent(10, 20);
		MyChild  c = new MyChild(100, 200, 300);
		p.test(c);
		p.test(p);
		c.test(c);
		c.test(p);
	}

 结果:<!--StartFragment -->

 
  • 大小: 7.6 KB
分享到:
评论

相关推荐

    java的编译时多态和运行时多态

    Java 编译时多态和运行时多态 Java 编译时多态和运行时多态是 Java 语言中两个重要的概念,它们都是多态性的实现方式,但它们在实现机制和应用场景上有所不同。 编译时多态 编译时多态是指在编译期根据参数列表的...

    labview创建多态VI

    创建多态VI在LabVIEW中的实现主要依赖于函数选板(Function Palette)上的数据类型结构(Data Type Structure)。下面将详细介绍如何在LabVIEW中创建和使用多态VI。 1. **定义多态VI的基本结构** 在LabVIEW中,一...

    一个HW 多态题目 一个HW 多态题目

    接着,我们来看多态的两种主要形式:编译时多态和运行时多态。编译时多态通常通过函数重载和运算符重载实现,编译器在编译阶段就能确定调用哪个函数。而运行时多态则是在程序运行时才决定调用哪个函数,这是通过虚...

    多态代码实例

    在编程领域,多态(Polymorphism)是一个关键概念,尤其在面向对象编程中发挥着重要作用。多态允许我们使用一个通用的接口来处理不同类型的对象,提供了代码的灵活性和可扩展性。虚函数(Virtual Function)是实现...

    Java 多态应用,掌握多态

    多态分为编译时多态和运行时多态。编译时多态主要通过方法的重载(Overloading)实现,即在同一个类中定义多个同名但参数列表不同的方法。而运行时多态则是通过方法的重写(Overriding)和接口实现实现,它依赖于...

    多态的练习案例

    在编程领域,多态(Polymorphism)是面向对象编程中的一个重要概念,它允许我们用一个接口处理多种不同的数据类型。多态性使得程序更加灵活,可扩展性更强,能够提高代码的重用率。本练习案例将深入探讨多态的常见...

    java多态的总结

    在Java中,多态分为编译时多态和运行时多态。编译时多态主要体现在方法的重载(Overloading),即在同一个类中可以有多个同名方法,但参数列表不同。编译器会根据传入参数的类型和数量来决定调用哪个方法。运行时...

    java多态小结

    ### Java多态详解 #### 什么是多态? 多态(Polymorphism)是面向对象编程的一个核心特性,指的是一个接口可以被多个类所实现或一个类可以被多个类所继承,进而表现出不同的行为。在Java中,多态主要体现在两个...

    原来多态还可以这样

    这主要体现在两个方面:静态多态(编译时多态)和动态多态(运行时多态)。静态多态通常通过函数重载或运算符重载实现,而动态多态则依赖于接口、继承和虚函数等机制。 1. 静态多态:在编译期间就能确定调用哪个...

    基于C++的多态模式编写类的代码多态.docx

    在C++中,多态(Polymorphism)是面向对象编程的一个核心概念,它允许我们使用一个接口来表示多种不同的类型。多态性使得代码更加灵活,可扩展性更强,可以减少代码重复,并提高代码的复用性。在这个文档中,通过两...

    Java多态的讲解

    Java多态的讲解

    多态PPT文件!!!!

    在IT行业中,多态(Polymorphism)是一个核心概念,主要在面向对象编程(Object-Oriented Programming, OOP)中出现。它允许我们使用一个接口来表示多种不同的类型,从而提高了代码的灵活性、可扩展性和可重用性。在...

    java 多态 经典讲解

    ### Java多态经典讲解 #### 一、理解Java多态 多态,作为面向对象编程的三大特性之一,是继抽象和继承之后的关键概念。它允许我们以统一的接口处理不同类型的对象,增强了代码的灵活性和可扩展性。在Java中,多态...

    封装继承多态总结

    封装继承多态总结

    C++继承与多态例子

    在C++编程语言中,继承和多态是面向对象编程(OOP)的两个核心概念。继承允许我们创建一个新类(子类),它继承了另一个类(父类)的属性和方法,从而实现了代码的重用和扩展。多态则是指同一种行为在不同对象上表现...

    Animal(多态练习)

    "Animal(多态练习)"这个主题,显然是为了帮助开发者理解并掌握多态这一面向对象的核心概念,同时结合设计模式的基础应用。 多态(Polymorphism)是面向对象三大特性(封装、继承、多态)之一,它允许我们使用一个...

    java多态练习题

    java多态、继承练习题,包含题目与答案,............................................................................................................

    国外一款多态引擎asm

    国外一款多态引擎asm 作为代码变形的一项技术

    java中多态实现

    java多态实现的课件,给那些需要的人 讲述了java多态的概念、分类、实现 综合案例讲解、总结多态的作用

    java中多态的内存分析

    多态性分为编译时多态和运行时多态,其中运行时多态是Java中最常见的形式,也称为动态绑定。在深入探讨Java中多态的内存分析之前,我们需要先理解一些基本概念。 首先,了解Java内存模型至关重要。Java程序运行时...

Global site tag (gtag.js) - Google Analytics