`
包涵
  • 浏览: 37647 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

多态的分类

    博客分类:
  • OOP
阅读更多
多态分两种:

1编译时多态:编译时动态重载;

2运行时多态:指一个对象可以具有多个类型,方法的覆盖

这样对于对象而言分为:

理解运行时多态:

Car c = new Bus();

Car编译时类型    编译时检查变量类型是否存在,是否有调用的方法

Bus运行时类型        实际运行是访问heep中的对象,调用实际的方法。

运行时多态是由运行时类型决定的

编译时多态是由编译时类型决定的

猫,小鸟,狗 都是动物,都可以安上动物的标签。

Interface Animal{}

Class Car implements Animal{}

Class Bird implements Animal{}

Class Dog implements Animal{}

方法中

Animal a = new Car();

Animal b = new Bird();

Animal c = new Dog();



*方法重载看的是参数的编译时类型



public class Animal{

public static void main(String[] args){



}

}





(1)   是覆盖吗?不能多态了

abstract class MyClass{

priavate void m();

}

class Sub extends MyClass(){

public void m();

}

(2)     错误的修饰符组合

abstract class MyClass{

priavate abstract void m();

}

class Sub extends MyClass(){

public void m();

}

(3)  5.0 新  非覆盖

abstract class MyClass{

private final void m();

}

class Sub extends MyClass(){

public void m();

}
分享到:
评论

相关推荐

    php多态和抽象类,php教程

    多态是同一个接口可以有不同的实现方式,也就是说,不同的子类可以对同一方法进行不同的响应。在PHP中,多态主要体现在方法覆盖和接口实现上。方法覆盖是指子类可以重写父类的方法,赋予其不同的功能。接口实现则是...

    java中多态实现

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

    Java多态的实现机制

    多态性的分类 多态性可以分为四种不同的类型:强制的、重载的、参数的和包含的。 1. 强制的多态 强制多态隐式地将参数按某种方法转换成编译器认为正确的类型,以避免错误。在编译器隐式地将参数转换成正确的类型...

    多态的编译器实现原理

    #### 数据的分类 数据可以分为两种类型: 1. **静态数据**:在编译时就分配了地址空间的数据,例如全局变量。 2. **动态数据**:在程序运行时分配地址空间的数据,例如局部变量或者动态分配的对象。这些数据通常...

    java多态机制

    #### 三、多态的分类 多态可以分为几种不同类型,这里主要关注Java中常见的两种类型: 1. **重载的多态**:在同一个类中,允许存在一个以上的同名方法,只要它们的参数列表不同即可。 2. **子类型的多态**:通过...

    深入Java核心 Java中多态的实现机制编程资料

    #### 多态的分类 多态可以根据其表现形式分为几大类: 1. **强制的多态**:指隐式地将参数转换成编译器认为正确的类型,以避免类型错误。 - 例如,`2.0 + 2`中的`2`会被自动转换为`2.0`。 2. **重载的多态**:...

    继承和多态笔记.docx

    - **定义**:包是Java中用于组织类的一种机制,类似于文件系统的文件夹结构,用于分类存储类,避免类名冲突并提供访问控制。 - **作用**: - 将具有相似功能或相关的类组织在一起,便于管理和查找。 - 控制访问...

    java笔记 java笔记

    - **多态分类**:编译时多态和运行时多态。 - **运行时多态的三原则**:替换原则、保护原则、安全原则。 - **`instanceof`运算符**:判断对象是否属于某个类或接口的实例。 ##### 7.4 静态变量、方法和类 - **静态...

    多态的实现及虚函数

    #### 多态的分类与实现 多态的实现可以分为两大类:编译时多态和运行时多态。前者主要通过函数重载(overloading)实现,编译器在编译阶段就能确定调用的具体函数版本;而后者则依赖于虚函数(virtual function),...

    行业分类-设备装置-多态计算平台及其构造方法.zip

    多态计算平台是一种先进的计算机架构,它旨在提供高度灵活、可扩展且高效的计算能力,以适应不断变化的应用需求。在当前的信息技术领域,随着大数据、人工智能、云计算等技术的快速发展,传统的单一计算模式已无法...

    多态详解= 多态的优缺点在不同的编程场景中不同的适用性

    #### 多态的分类 多态可以分为编译时多态(设计时多态)和运行时多态。编译时多态主要通过方法重载实现,而运行时多态则是 Java 运行时系统根据调用该方法的实例的类型来决定选择调用哪个方法。 #### 多态的示例 ...

    继承接口与多态

    这种关系就像生物界的物种分类,子类继承了父类的一些特征,同时还可以添加自己独特的特性。通过继承,我们可以创建一个类的层次结构,共享代码,减少重复,并使代码更具可扩展性。例如,在设计一个软件系统时,可以...

    java中实现多态的机制Java系列2021.pdf

    本篇文档将详细介绍Java中实现多态的机制,包括多态的基本概念、分类以及实现原理。 首先,要理解什么是多态。多态意味着同一个接口使用不同的实例而执行不同操作。更具体地说,多态就是一个引用变量在运行时可以...

    深入Java核心Java中多态的实现机制.pdf

    3. **多态的分类**: - 根据Cardelli和Wegner的理论,多态可以分为特定多态和通用多态两大类,每类又细分为两种类型。 - **特定多态**包括强制多态和重载多态: - **强制多态**涉及到类型转换,如编译器自动将int...

    多态及其在数据结构中的应用.pdf

    文档进一步解释了多态类型的分类,包括强制多态、重载多态、参数多态和包含多态。这四种类型在面向对象设计中起着不同的作用。 强制多态涉及类型转换,即把一个变量的类型改变来适应特定函数或操作的要求。重载多态...

    深入Java核心 Java中多态的实现机制.docx

    多态的类型可以分为四种,源自Luca Cardelli和Peter Wegner的分类: 1. 强制多态:在表达式中,如`2.0 + 22.0 + "2"`,编译器会根据上下文自动将不同类型转换为合适的类型,以完成操作。 2. 重载多态:同一标识符...

    C++程序设计员工信息管理并用多态实现

    实现1.新增员工信息 2.删除员工信息 3.员工信息搜索(按姓名) 4.员工信息分类存储 5.员工信息导入 6.按工资排序 7.退出 ******请选择:1

    java编程中的继承和多态PPT

    例如,在生物分类中,动物是父类,食草动物和食肉动物是子类,它们都具备动物的一般特性,但又有自己的特殊性。 生活中的继承例子可以进一步帮助理解这一概念。比如,汽车是一个大类别,其中包括巴士、卡车和出租车...

    讲义2继承多态.docx

    1.2 实际生活中的例子,如动植物分类,兔子和羊是食草动物,狮子和豹是食肉动物,它们各自都有独特的属性和行为,但都属于动物类别。这种"is-a"关系就是继承的基础,子类是父类的特例。 1.3 类的继承格式使用`...

Global site tag (gtag.js) - Google Analytics