4.42 多态的概述

/*
多态:同一个对象(事物),在不同时刻体现出来的不同状态。
举例:
	猫是猫,猫是动物。
	水(液体,固体,气态)。

多态的前提:
	A:要有继承关系。
	B:要有方法重写。
		其实没有也是可以的,但是如果没有这个就没有意义。
			动物 d = new 猫();
			d.show();
			动物 d = new 狗();
			d.show();
	C:要有父类引用指向子类对象。
		父 f =  new 子();

用代码体现一下多态。

多态中的成员访问特点:
	A:成员变量
		编译看左边,运行看左边。
	B:构造方法
		创建子类对象的时候,访问父类的构造方法,对父类的数据进行初始化。
	C:成员方法
		编译看左边,运行看右边。
	D:静态方法
		编译看左边,运行看左边。
		(静态和类相关,算不上重写,所以,访问还是左边的)

	由于成员方法存在方法重写,所以它运行看右边。
*/
class Fu {
	public int num = 100;

	public void show() {
		System.out.println("show Fu");
	}

	public static void function() {
		System.out.println("function Fu");
	}
}

class Zi extends Fu {
	public int num = 1000;
	public int num2 = 200;

	public void show() {
		System.out.println("show Zi");
	}

	public void method() {
		System.out.println("method zi");
	}

	public static void function() {
		System.out.println("function Zi");
	}
}

class DuoTaiDemo {
	public static void main(String[] args) {
		// 要有父类引用指向子类对象。
		// 父 f = new 子();
		Fu f = new Zi();
		System.out.println(f.num);
		// 找不到符号
		// System.out.println(f.num2);

		f.show();
		// 找不到符号
		// f.method();
		f.function();
	}
}
时间: 2024-10-16 07:19:08

4.42 多态的概述的相关文章

09.面向对象多态的概述及其代码体现

09.01_面向对象(多态的概述及其代码体现) A:多态(polymorphic [,p?l?'m??f?k])概述 事物存在的多种形态 B:多态前提 a:要有继承关系. b:要有方法重写. c:要有父类引用指向子类对象. C:案例演示 代码体现多态 案例: class Demo1_Polymorphic { public static void main(String[] args) { Cat c = new Cat();//猫是一只猫 c.eat(); Animal a = new Cat

java8-2 多态的概述

1.多态:同一个对象(事物),在不同时刻体现出来的不同状态. 举例: 猫是猫,猫是动物. 水(液体,固体,气态). 多态的前提: A:要有继承关系. B:要有方法重写. 其实没有也是可以的,但是如果没有这个就没有意义. 动物 d = new 猫(); d.show(); 动物 d = new 狗(); d.show(); C:要有父类引用指向子类对象. 父 f = new 子(); 用代码体现一下多态. 多态中的成员访问特点: A:成员变量 编译看左边,运行看左边. 父类必须有这个变量 B:构造

多态的概述

多态: (1)同一个对象在不同时刻表现出的多种状态 理解:编译时期状态和运行时期状态不一致的现象 (2)多态的前提: A:要有继承或者实现关系 B:要有方法重写 因为一般都是抽象类或者接口的多态 C:要有父类/父接口的引用指向子类对象 (3)多态访问的成员特点: Fu f = new Zi(); A:成员变量 编译看左边,运行看左边 B:成员方法 编译看左边,运行看右边 C:静态方法 编译看左边,运行看左边 (4)多态的好处和弊端: A:好处 提高程序的可维护性和可扩展性 维护性:继承保证 扩展

阶段1 语言基础+高级_1-3-Java语言高级_02-继承与多态_第4节 多态_15_多态的概述

不是多种状态,而是有多种形态 继承是多态的前提 子类就是一个父类.学生就是一个人 多态性说的是这个对象. 原文地址:https://www.cnblogs.com/wangjunwei/p/11219107.html

黑马程序员——面向对象(一)概述、类与对象、继承、抽象类、接口、多态、内部类

一.面向对象概述 1.面向对象:是一个很抽象的概念,它相对面向过程而言,是一种程序设计的思想. 2.面向对象的特点: * 符合人们思考习惯的思想 * 可以将复杂的事情简单化 * 将程序员从执行者转换成了指挥者 * 完成需求时:只需要寻找具备所需功能的对象或者创建所需功能的对象即可,简化开发效率并提高对象的复用性. 3.面向对象的三个特征:封装(Encapsulation).继承(Inheritance).多态(Polymorphism). 二.类与对象 (一)类与对象之间的关系 1.类的定义:类

面向对象_多态_抽象类_接口

09.01_面向对象(多态的概述及其代码体现) A:多态(polymorphic)概述 事物存在的多种形态 B:多态前提 a:要有继承关系. b:要有方法重写. c:要有父类引用指向子类对象. C:案例演示 代码体现多态 public class Demo1_polymorphic { /** * 成员变量:编译时看左边(父类),运行时看左边(父类) * 成员方法:编译时看左边(父类),运行时看右边(子类) * @param args */ public static void main(Str

Java入门 第二季第四章 多态

这是我学习慕课网Java课程的笔记,原视频链接为:http://www.imooc.com/learn/124 4-1 Java中的多态 定义:对象的多种形态 1. 引用多态 父类的引用可以指向本类的对象:父类的引用也可以指向子类的对象 继承是多态的实现基础  2. 方法多态 创建本类对象时,调用的方法为本类方法 创建子类对象时,调用的方法为子类重写的方法或者继承的方法 PS:不能调用子类独有的方法 4-2 多态中的引用类型转换 1. 向上类型转换(隐式/自动类型转换),是小类型到大类型的转换.

05_JavaSE之OOP--面向对象(多态)

对象(五) 一.多态的概述(Polymorphism) 多态可以理解成,事物具有多种形态,对象可以存在不同的形态.如: 人可以有男人,女人:也可以分成学生,老师各种职业: 动物可以有老鼠和猫,大象和狮子. 多态则是面向对象三大特征之一,接下来我们依次谈谈多态的是什么样的,有什么好处和弊端,好处也就体现了他的作用,为什么会有多态的出现. 二.多态详述 1. 多态的前提 首先,必须要有继承, 其次,要有方法的重写, 再者,要有父类引用指向子类对象. 代码01: 1 public class Test

多态 学习

dome1 class Demo1_Polymorphic { public static void main(String[] args) { Cat c = new Cat(); c.eat(); Animal a = new Cat(); //父类引用指向子类对象 a.eat(); } } /* * A:多态(polymorphic)概述 * 事物存在的多种形态 * B:多态前提 * a:要有继承关系. * b:要有方法重写. * c:要有父类引用指向子类对象. * C:案例演示 * 代码