• 视频+资料(工程源码、笔记)【链接:https://pan.baidu.com/s/1MdFNUADVSFf-lVw3SJRvtg   提取码:zjxs】
  • Java基础--学习笔记(零起点打开java世界的大门)--博客汇总表

目   录

01_多态

1.1、多态概述

02_多态中成员访问特点

1.2、多态中成员访问特点

03_多态的好处和弊端

1.3、多态的好处和弊端

04_多态中的转型

1.4、多态中的转型

05_多态转型内存图解

1.5、多态转型内存图解

06_猫和狗(多态版)

案例:猫和狗

07_抽象类

1.1、抽象类概述

08_抽象类特点

1.2、抽象类特点

09_抽象类的成员特点

1.3、抽象类的成员特点

10_猫和狗(抽象类版)

案例:猫和狗

11_接口

1.1、接口概述

12_接口特点

1.2、接口的特点

13_接口的成员特点

1.3、接口的成员特点

14_猫和狗(接口版)

案例:猫和狗

15_类和接口的关系

1.4、类和接口的关系

16_抽象类和接口的区别

1.5、抽象类和接口的区别

17_运动员和教练案例分析

案例:运动员和教练

18_运动员和教练案例代码实现


01_多态

1.1、多态概述

什么是多态:

同一个对象,在不同时刻表现出来的不同形态。

举例:猫

可以说 猫是猫:猫 cat = new 猫();

也可以说 猫是动物:动物 animal = new 猫();

这里猫在不同的时刻表现出来了不同的形态,这就是多态。

多态的前提:

  • 要有 继承/实现 关系
  • 要有 方法的重写
  • 要有 父类引用指向子类对象【动物 animal = new 猫();】

02_多态中成员访问特点

1.2、多态中成员访问特点

成员变量:编译看左边,执行看左边(编译看父类,运行看父类)。

成员方法:编译看左边,执行看右边(编译看父类,运行看子类)。

为什么成员变量和成员方法的访问不一样呢?

因为成员方法有重写,而成员变量没有。

03_多态的好处和弊端

1.3、多态的好处和弊端

好处:提高程序的扩展性。定义方法时候,使用父类型作为参数,在使用的时候,使用具体的子类型参与操作。

弊端:不能使用子类的特有成员(不能访问子类特有的成员方法)。

假如要添加很多种动物:

  1. 新建动物类;
  2. 在测试类中创建新动物对象,调用新动物的方法;
  3. 但是在动物操作类(AnimalOperator.java)中,每次添加动物,都要添加相应的方法 public void useAnimal(x动物 x) {} ,过于麻烦。

Java11-day02【多态(成员访问、多态转型、内存图解)、抽象类(成员特点)、接口(成员特点)、类和接口的关系、抽象类和接口的区别、综合案例】相关推荐

  1. C++成员访问限定符 private public

      private和public称为成员访问限定符.用它们来声明个成员的被访问权限.    private 称为私有的,只能在本类中的成员函数引用,类外不能调用.    public  称为共有的,既 ...

  2. Java从入门到放弃09---多态/向上转型/向下转型/多态内存图/抽象类/关键字abstract不能和哪些关键字共存/接口/类与类,类与接口,接口与接口的关系/抽象类与接口的区别

    Java从入门到放弃09-多态/向上转型/向下转型/多态内存图/抽象类/关键字abstract不能和哪些关键字共存/接口/类与类,类与接口,接口与接口的关系/抽象类与接口的区别 01 多态 多态指的是 ...

  3. 第三次学JAVA再学不好就吃翔(part34)--多态的成员访问

    学习笔记,仅供参考 文章目录 面向对象 多态 多态概述 多态的成员访问 成员变量 成员方法 静态成员方法 面向对象 多态 多态概述 多态的概述 事物存在的多种形态 多态实现的前提 要有继承关系 要有方 ...

  4. 多态指针访问虚函数不能被继承的类快速排序N皇后问题插入排序堆排序merge归并排序栈上生成对象两个栈实现一个队列...

    多态 /*1. 要想实现覆盖(重写)父类必须声明为virtual,子类可以不声明为virtual.-->FunB()2. 派生类重写基类的虚函数实现多态,要求函数名.参数列表.返回值完全相同.( ...

  5. C#基础--类/接口/成员修饰符,多态、重载、重写,静态和非静态

    C#基础--类/接口/成员修饰符,多态.重载.重写,静态和非静态 类/接口/成员修饰符 C#修饰符---接口: 接口默认访问符是internal 接口的成员默认访问修饰符是public C#修饰符-- ...

  6. 多态 什么是多态 多态转型 注意事项

    关键知识点和补充    封装: 隐藏内部的实现细节,对外提供公共的访问方式   继承: 子类一旦继承父类,就有权使用父类中的内容  多态: 一种事物的多种形态|多种表现形式 多态的前提:  继承    ...

  7. java的知识点13——多态、对象的转型(casting)、final关键字、抽象方法和抽象类、接口的作用、如何定义和使用接口?、接口的多继承、面向接口编程

    多态 多态指的是同一个方法调用,由于对象不同可能会有不同的行为.现实生活中,同一个方法,具体实现会完全不同. 多态的要点: 1. 多态是方法的多态,不是属性的多态(多态与属性无关). 2. 多态的存在 ...

  8. java 和c 多态比较_多态在 Java 和 C 编程语言中的实现比较

    2011 年 12 月 22 日发布 众所周知,多态是面向对象编程语言的重要特性,它允许基类的指针或引用指向派生类的对象,而在具体访问时实现方法的动态绑定.C++ 和 Java 作为当前最为流行的两种 ...

  9. java 多态_Java面向对象 —— 多态

    前两天已经相继介绍了Java面向对象的三大特性之中的封装.继承,所以今天就介绍Java面向对象的三大特性的最后一项,多态~ 首先讲一下什么是多态,以及多态需要注意的细节 什么是多态:一个对象具备多种形 ...

最新文章

  1. bootstrap bssuggest
  2. hdu 5542(树状数组优化dp)
  3. OpenGL材质Materials
  4. 阿里云峰会 | AI搜题加速在线教育行业场景创新
  5. 看了这个高并发系统架构,才知道我对秒杀的误解有多深
  6. java并发包系列---LockSupport
  7. 进阶篇-用户界面:4.Android中常用组件
  8. Lua初学习 9-12 基础
  9. ASP.NET MVC5+EF6+EasyUI 后台管理系统(40)-精准在线人数统计实现-【过滤器+Cache】...
  10. tensorflow之安装opencv
  11. java——ArrayList中contains()方法中的疑问
  12. Codeforces 1299 D 环游世界
  13. 使用Arduino的自动药物提醒
  14. 宇宙中最恐怖的行星之索伦之眼—北落师门b
  15. 理解LINQ预编译查询(Compiled LINQ)
  16. KEIL expected an identifier
  17. 【沃顿商学院学习笔记】公益创业——01开始公益创业Starting a Social Enterprise
  18. 值得一看的网络课程推荐(不限于计算机科学)
  19. 使用加速人生后 sqlserver 本地数据库打不开
  20. linux怎么运行amd64,Ubuntu 10.04 amd64安装和配置

热门文章

  1. php灰度化,PHP Imagick – 将图像转换为灰度(非常糟糕的结果)
  2. 7系列mrcc xilinx_XILINX 7系列FPGA_时钟篇
  3. python复制多个文件_python 之 复制多个模板文件
  4. 一、华为云ModelArts环配置
  5. 1秒识别200个假大牌 成本降50%  清华阿里邀全国人才用20张图锻造“打假AI”
  6. 微软2021校园招聘正式启动
  7. 2017年度最值得读的AI论文 | NLP篇 · 评选结果公布
  8. Python中操作MySQL/Oracle
  9. 【天池赛事】零基础入门语义分割-地表建筑物识别 Task4:评价函数与损失函数
  10. 回归分析残差不满足正态分布_线性回归思路梳理!精华必看!