`
hellowuyao
  • 浏览: 9735 次
  • 性别: Icon_minigender_1
  • 来自: 北京市
最近访客 更多访客>>
社区版块
存档分类
最新评论

java基础特性-多态

阅读更多

多态

 

一、概念:

不同方法名中的不同实现。

不同实现的有两种表现形式:重写(overwrite)和重载(overload)。

 

1.重写(overriding):在有继承关系的两个类中,子类继承了父类的方法,当子类对象实例赋值给父类对象引用时,通过父类调用方法时,是调用的子类的方法,这种方式叫子类覆盖/重写了父类方法,也叫动态链接或者动态方法调用。

 

总结:因此通过父类的引用不同子类中的重写的方法而实现不同的行为,则实现了多态性。

 

例子:

class Father{
        public void show(){
            System.out.println('这是父类执行的方法');
        }
}

class ChildA extends Father{
       public void show(){
            System.out.println('这是子类A执行的方法');
       }
}

class ChildB extends Father{
       public void show(){
            System.out.println('这是子类B执行的方法');
       }
}

class Test{
      public static void main(String[] args){
             Father a = new ChildA();
             Father b = new ChildB();
             a.show();
             b.show();
      }
}

 

控制台输出:

这是子类A执行的方法

这是子类B执行的方法

 

2.重载(overloading):在同一类中,两个或两个以上一样的方法名,但是不同的参数或者返回类型。

 

总结:通过该类实例调用同一样方法名不同参数的方式实现了不同行为,则实现了多态性。

 

例子:

class Test {
        public void show(String str){
                 System.out.println("字符串参数:"+str);
        }

        public void show(int a,int b){
                 System.out.println("数字型参数:"+a+","+b);
        }

        public static void main(String[] args){
                 Test t = new Test();
                 t.show("helloworld");
                 t.show(1,2);
        }
}

 

控制台输出:

字符串参数:helloworld

数字型参数:1,2

 

 

分享到:
评论

相关推荐

    Java零基础-多态.md

    建议读者在阅读前具备Java的基础知识,包括类、对象、方法和继承等概念。 在阅读过程中,尝试编写简单的Java程序,体验多态的效果,并观察父类引用指向子类对象时的行为变化。 建议通过阅读相关的Java教材或搜索资料...

    Java基础入门教程 第4章 继承和多态(共36页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    JAVA编程基础-06面向对象高级特性

    java 高级 继承 覆盖 多态,抽象类,final

    Java基础入门教程 第9章 Java的高级特性(共32页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    Java语法基础-面试专题及答案

    11.Java 面向对象编程三大特性: 封装 继承 多态 关于继承的3点 12.String StringBuffer 和 StringBuilder 的区别是什么 String 为什么是不可变的 可变性、线程安全性的研究 13.自动装箱与拆箱 14.在一个静态方法内...

    Java基础入门教程 第1章 Java 简介(共31页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    java资料---Java SE.ppt

    Java发展史 面向对象基础 面向对象三大特征(封装、继承和多态) static和final 抽象类和接口 异常处理 集合框架 IO 并发编程 Java SE5中其它的重要新特性

    AES-Java-iOS-Android.zip

    面向对象:Java全面支持面向对象的特性,如封装、继承和多态,使得代码更易于维护和扩展。 安全:Java提供了丰富的安全特性,如禁止指针运算、自动内存管理和异常处理机制,以减少程序错误和恶意攻击的可能性。 ...

    Java基础入门教程 第3章 类和对象(共40页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    Java基础入门教程 第5章 Java基础类的应用(共42页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    Java实现FP-growth算法.zip

    面向对象:Java全面支持面向对象的特性,如封装、继承和多态,使得代码更易于维护和扩展。 安全:Java提供了丰富的安全特性,如禁止指针运算、自动内存管理和异常处理机制,以减少程序错误和恶意攻击的可能性。 ...

    Java基础入门教程 第7章 Java中的异常处理(共26页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    Java基础知识点总结.docx

    无论是工作学习,不断的总结是必不可少的。只有不断的总结,发现问题,弥补不足,才能长久的进步!!Java学习更是如此,知识点总结目录如下: 目录 一、 Java概述 3 ...Java 8新特性 347 Java 性能优化 362

    Java基础入门教程 第2章 java语言基础(共52页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    Java程序设计-核心基础篇.ppt

    Java中类和对象的定义; Java对OOP三个主要特性——封装、继承和多态的支持机制; Java中的对象数组这种数据结构

    Java基础入门教程 第8章 文件流的输入输出操作(共37页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    Java基础入门教程 含实验文档 实验源码 全部PPT课件 共9个章节 全套文件集合.rar

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    Java基础入门教程 第6章 集合框架(共28页).ppt

    Java基础入门教程 第4章 继承和多态(共36页).ppt Java基础入门教程 第5章 Java基础类的应用(共42页).ppt Java基础入门教程 第6章 集合框架(共28页).ppt Java基础入门教程 第7章 Java中的异常处理(共26页)....

    Java——多态

    Java——多态 多态的特性 1.可替换性(substitutability)。多态对已存在代码具有可替换性。 例如,多态对圆Circle类工作,对其他任何圆形几何体,如圆环, 也同样工作。 2.可扩充性(extensibility)。多态对代码...

    【Java】基础18:面向对象三大特性之多态

    面向对象三大特性:封装、继承和多态。 今天学最后一个特性:多态。 什么叫多态呢?按照字面意思理解就是多种形态的意思。 还是举昨天的那个例子: 动物园里动物都得吃食物,兔子吃胡萝卜,猫吃鱼,狗吃肉。 同一...

Global site tag (gtag.js) - Google Analytics