多态分为静态多态性和动态多态性。
静态多态性---两个函数名称相同,函数签名不同。
静态多态性又有三种情况:1.参数个数不同;2.参数个数相同,类型不同;3.个数和类型均相同,但出现顺序不同。
例:
public class Customer {
/**
* 函数的静态多态性
*/
private String account;
private String password;
//无参构造函数
public Customer(){}
//带有两个参数的构造函数
public Customer(String account, String password){
this.account=account;
this.password = password;
}
}
动态多态性:
//动态多态性一般在继承时使用
//抽象类Person
abstract class Person{
public abstract void printInfo();
}
//继承Person类的Student类
class Student extends Person{
public void printInfo(){
System.out.println("学生打印");
}
}
//继承Person类的Teacher类
class Teacher extends Person{
public void printInfo(){
System.out.print("老师打印");
}
}
//测试类--根据传入print()函数不同的参数值来决定答应谁
public class PrintTest{
public static void print(Person person){
person.printInfo();
}
public static void main(String[] args){
print(new Teacher());
}
}
分享到:
相关推荐
.archivetemp多态笔记.md
### 继承与多态知识点总结 #### 接口概念及作用 - **定义**:接口是一种特殊的数据类型,主要用于定义一组未实现的方法签名。它强制要求任何实现该接口的类必须提供这些方法的具体实现,这有助于提升软件设计的...
### Python面向对象编程基础:封装、继承与多态 #### 封装 **定义与作用:** 封装是面向对象编程的一个基本概念,指的是将数据及其相关的操作捆绑在一起,对外提供一个干净的接口,隐藏实现细节。封装使得代码更加...
在Java编程语言中,多态(Polymorphism)和接口(Interface)是两个核心概念,它们对于理解和构建面向对象程序至关重要。多态性是面向对象编程的三大特性之一,另外两个是封装和继承。接口则提供了类之间的抽象连接...
1. **多态应用**:多态性允许我们使用一个类型的引用指向它的子类型实例,这样在调用相同的方法时,会根据实际的对象类型执行不同的操作。这种现象在程序设计中非常常见,例如在处理不同类型的动物时,虽然都具有...
- **代码复用**:通过多态机制,可以利用基类或接口声明变量,并通过这些变量调用实际子类的方法,从而实现对多个不同子类的行为进行统一处理。 - **可扩展性**:当系统需要增加新的子类时,无需修改原有代码即可...
java多态和抽象笔记
C++ 类和对象多态学习笔记 本节笔记主要介绍了 C++ 中的多态概念,包括静态多态和动态多态,及其使用条件和优点。 多态是 C++ 面向对象三大特性之一,分为两类:静态多态和动态多态。静态多态是指函数重载和运算符...
### C++虚函数和多态学习笔记 #### 一、虚函数与多态的基本概念 在C++中,虚函数是实现多态的一种机制。多态是指同一个接口(方法名)可以有不同的行为表现,即“一种接口,多种方法”。通过虚函数,我们可以实现...
Java学习笔记(到多态部分)
### 学习笔记: 抽象封装、继承、多态 #### 一、面向对象的基本概念 面向对象编程(Object-Oriented Programming, OOP)是一种编程范式,它使用“对象”来设计软件。对象是由数据(即字段或属性)和对这些数据进行...
在Java中,多态性体现在两个方面:静态多态(编译时多态)和动态多态(运行时多态)。 - **编译时类型**:这是你在编写代码时声明的类型,比如`Person p = new Student();`这里的`Person`就是编译时类型,编译器会...
《深入理解Java多态》 在Java编程语言中,多态(Polymorphism)是面向对象编程的三大特性之一,另外两个是封装和继承。多态性是指一个接口或者类可以表现出多种形态,使得程序在运行时能够根据实际的对象类型执行...
### Java中的对象转型与多态 #### 一、对象转型 在Java中,对象转型(Casting)是指将一个对象的引用从一个类转换到另一个类的过程。这通常发生在类的继承关系中。 ##### 向上转型(Upcasting) - **定义**:将...
多态性主要体现在接口多态和继承多态两个方面。 1. **接口多态性**: 接口多态是指不同的类实现同一个接口,并根据各自的需求提供不同的实现。在这种情况下,接口扮演着统一行为的角色,使得不同类型的对象可以通过...
C++继承和多态的学习笔记
“oop-0509”可能是某个代码文件或者笔记,其中可能记录了关于面向对象编程,特别是多态的更深入讨论和示例代码。 总的来说,这个压缩包可能是一个全面介绍和实践多态概念的教学资源,涵盖了多态的理论和实践应用,...
内容详细,适合初学者学习
总结一下,本篇笔记涵盖了Java编程中的重要概念,包括构造器链、多态性、单态模式、静态初始化和对象引用比较,以及参数传递机制。理解并熟练运用这些知识点,能帮助开发者写出更加高效、可靠的Java代码。