继承是多态的基础,没有继承就没有多态,主要是借助方法重写和向上转型与向下转型。 定义:一个特定类型的变量可以引用不同类型的对象,并能自动调用引用对象的方法,根据作用到的不同对象类型,响应不同的操作。 好处:减少类中的代码量,提高代码的可扩展性和可维护性。 //是不是懵逼了,其实就是想变量一样,类是引 ...
分类:
编程语言 时间:
2020-02-25 18:12:43
阅读次数:
88
继承关系 java的为单继承、多级继承。父类有直接父类和间接父类。最上层为Object类。类的继承使用extends关键字。public class Child extends Parent{}子类继承了父类的方法,重名变量和方法使用就近原则,方向为向父类方向查找。super关键字,在子类中调用父类 ...
分类:
编程语言 时间:
2020-02-05 18:31:51
阅读次数:
64
向下转型: 子类引用指向父类对象,此处必须强制转换,可以调用子类特有方法。例: Animal two = new Cat(); Cat temp = (Cat)two; 若满足转型条件时才能进行强转。 判断一个对象是否是某个类的实例: ...
分类:
编程语言 时间:
2020-02-05 10:04:26
阅读次数:
82
Instanceof: 判断一个对象是什么类型的~,可以判断两个类之间是否存在父子关系 1 package com.oop.demo07; 2 3 public class Person { 4 5 public void run(){ 6 System.out.println("run"); 7 ...
分类:
其他好文 时间:
2020-01-21 18:20:51
阅读次数:
69
多态为java的三大特性之一,了解学习多态,将更了解java。 多态实现条件 继承与重写(方法的多态性) 接口(对象的多态性) 抽象类与抽象方法(对象的多态性) 向上转型和向下转型 向上转型:父类 父类对象 = 子类实例 向下转型:子类 子类对象 = (子类)父类对象 当父类需要调用子类的扩充方法时 ...
分类:
编程语言 时间:
2020-01-04 12:26:06
阅读次数:
67
其实一直在用自己有感觉但是说不出来 多态 简单的说一种事物出现两种状态 例如 学生,学生是人的一种,则一个具体的同学张三既是学生也是人,即出现两种形态 主要是两种状态 向上转型和向下转型 例如 父类类型 变量名=new 子类类型(); 自动向上转型 List list=new Linklist() ...
分类:
其他好文 时间:
2020-01-02 15:50:51
阅读次数:
62
1.向上转型: 父类 引用=new 子类(); 问题:无法调用子类有而父类没有的方法 代码演示: //向上转型 public class Demo1 { public static void main(String[] args) { Person p=new Student(); //父类Pers ...
分类:
编程语言 时间:
2019-12-29 18:43:24
阅读次数:
71
float和double 有什么区别,使用时注意什么 float : 单精度浮点数 double : 双精度浮点数 两者的主要区别如下: 01.在内存中占有的字节数不同 单精度浮点数在机内存占4个字节 双精度浮点数在机内存占8个字节 02.有效数字位数不同 单精度浮点数有效数字8位 双精度浮点数有效 ...
分类:
其他好文 时间:
2019-12-29 16:36:09
阅读次数:
71
[toc] Java多态之向下转型 往期回顾:我们学习了向上转型和动态绑定的概念,可以知道在继承关系中,将一个子类对象赋值给父类的引用变量,调用父类的方法,在实际运行时,就可以根据子类中重写的方法执行不同的操作。其中有一个弊端,就是在向上转型的过程中,其实丢失了一部分子类特有的功能,毕竟它只允许调用 ...
分类:
编程语言 时间:
2019-12-19 21:27:52
阅读次数:
71
一.泛型的概述1.1泛型由来我们的集合可以存储多种数据类型的元素,那么在存储的时候没有任何问题,但是在获取元素,并向下转型的时候,可能会存在一个错误,而这个错误就是ClassCastException.很显然,集合的这种可以存储多种数据类型的元素的这个特点,不怎么友好,程序存在一些安全隐患,那么为了出来这种安全隐患,我们应该限定一个集合存储元素的数据类型,我们只让他存储统一中数据类型的元素,那么在
分类:
编程语言 时间:
2019-12-18 23:39:36
阅读次数:
92