• Java基础之多态


    前言

    Java是一种面向对象编程语言,抽象、继承、封装、多态,是面向对象语言的四个基本特征,

    抽象、继承和封装是多态的基础,同时多态是抽象、继承、封装的表现形式,

    简单的讲,多态就是一个消息的多种表现形式。

    多态的必要条件

    1.必须要有继承,

    2.必须要有子类重写父类的方法,

    3.父类的引用变量指向子类的对象,

    第2点中重写父类的方法的条件有三种情况是不能实现多态

    1.父类的方法是静态方法,静态方法是属于类本身而不是对象,静态方法是在class文件加载到java虚拟机时跟着类信息一起存在,

    2.父类的方法被final关键字修饰,不能够被子类重写,

    3.父类的方法是被private修饰的私有方法,不能够被子孙类重写;父类的方法是被 protected关键字修饰的受保护方法,他虽然能够被子孙类重写,但是不能够被外部方法调用;

    因此也是不能够体现多态的特性,

    多态的分类

    1.方法的重载,多个方法的方法名相同,参数列表,参数类型,参数顺序的不同构成一组重载方法,在编译时期体现,

    2.方法的重写,子类在继承父类时,重写父类的方法,并且在程序运行时期调用父类引用指向的对象的方法,

    重载指的是在一个具体的类中,参数列表不同,参数类型不同,参数顺序不同,且方法名相同的的一直方法,与返回值的类型和和修饰符无关

    Java语言的作用域有四类:public、protected、default、private

    1.public:public修饰的成员属性或方法对所有用户公开,

    2.protected:protected修饰的成员属性或者方法只对当前类、子孙类、同一个包下的类公开,

    3.default:default修饰的成员属性或者方法只对当前类、同一包下的类公开,

    4.private:private修饰的成员属性或者方法只能给当前类调用

    很多开发多年的Java程序员不太懂Java多态或者是以为多态很简单,然而开发却总写不出任何有质量的代码,我只想说,这不简单,这是很多复杂设计模式的基础,

    当然,楼主我也没有专研的很深。依旧在努力,在路上,希望以后写出更精致的文章。

  • 相关阅读:
    实验三
    第二、三周作业
    实验二
    第一周作业
    学号20182325袁源 实验一《Linux基础与Java开发环境》实验报告
    20182331 2019-2020-1 《数据结构与面向对象程序设计》实验五报告
    20182331 2019-2020-1 《数据结构与面向对象程序设计》实验四报告
    20182331 2019-2020-5《数据结构与面向对象程序设计》第5周学习总结
    20182331 2019-2020-4《数据结构与面向对象程序设计》第4周学习总结
    20182331 2019-2020-1 《数据结构与面向对象程序设计》实验三报告
  • 原文地址:https://www.cnblogs.com/sunshine798798/p/9029320.html
Copyright © 2020-2023  润新知