向上转型和向下转型

2023-11-15

一、概念
向上转型是指将子类的实例赋值给父类类型的变量。
向下转型是指将父类的实例赋值给子类类型的变量。
二、向上转型
1、向上转型后父类的引用所指向的属性是父类的属性。
2、如果子类重写了父类的方法,那么父类引用指向的或者调用的方法是子类的方法,这个叫动态绑定(实现多态)。
3、父类引用不能调用子类自己的方法。
4、向上转型会丢失子类的新增方法,同时会保留子类重写的方法。
三、向下转型
1、编译时需要强制类型转换,father前面的必须添加(Son)。
2、运行时会出现java.lang.ClassCastException错误,可使用instanceof来避免出错此类错误。
3、向下转型可以得到子类的所有方法(包含父类的方法)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

向上转型和向下转型 的相关文章

  • 使用线程池创建线程

    使用线程池可以不用线程的时候放回线程池 用的时候再从线程池取 1 5后引入的Executor框架的最大优点是把任务的提交和执行解耦 Executor接口中定义了一个方法execute 该方法接收一个Runable实例 它用来执行一个任务 任
  • 集合框架 — ConcurrentHashMap

    集合框架 ConcurrentHashMap 一 ConcurrentHashMap JDK1 7 1 实现结构 2 保证并发安全 分段锁技术 3 put 和 get 方法 二 ConcurrentHashMap JDK1 8 1 实现结构
  • java IO流相关的类的分类和总结

    关于Java的IO流以前也总结过不少 根据API画出了IO流的类结构图 也写了不少相关的程序 但是没有对IO流做一个综合型的总结 最近在CSDN和ITeye上看了不少对IO流的总结 感觉有必要 抽时间总结一次 这既是对Java基础知识的进一
  • Mysql获取数据库的所有表以及表所有字段信息

    mysql获取所有表以及表所有字段信息 SELECT TB TABLE SCHEMA 模式 TB TABLE NAME 表名 TB TABLE COMMENT 表名注释 COL COLUMN NAME 字段名 COL COLUMN TYPE
  • 从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,输入为0时结束程序。(题目类型:没有明确循环次数)

    import java util Scanner 从键盘读入个数不确定的整数 并判断读入的正数和负数的个数 输入 为0时结束程序 public class ForWhileTest public static void main Strin
  • 什么是“堆”,"栈","堆栈","队列",它们的区别?

    一 堆 什么是堆 又该怎么理解呢 堆通常是一个可以被看做一棵树的数组对象 堆总是满足下列性质 堆中某个节点的值总是不大于或不小于其父节点的值 堆总是一棵完全二叉树 将根节点最大的堆叫做最大堆或大根堆 根节点最小的堆叫做最小堆或小根堆 常见的
  • JAVA异常处理(三种异常处理机制)

    目录 前言 一 异常体系 二 异常示例 1 运行时异常 2 编译时异常 三 异常处理 1 默认异常处理 2 异常处理1 throws 3 异常处理2 try catch 4 异常处理3 前面两者的结合 5 运行时异常的处理 四 自定义异常
  • Servlet详解

    一 Servlet的生命周期 创建Servlet有两个时机 一是客户端第一次请求每个Servlet时 系统创建该Servlet实例 另外是Web应用启动时立即创建Servlet实例 即load on startup Servlet 每个Se
  • 计算阶乘的两种实现方式(Java)

    本文以计算5的阶乘为例 5 5 4 3 2 1 120 一 循环阶乘 1 While循环 public class TestWhileFactorial public static void main String args int res
  • HashMap多个构造方法的理解

    1 创建HashMap除了常用的空方法 Map map new HashMap 2 还有一个入参的 这个入参并不是指创建大小为3的HashMap 而是创建大于3的最小2的n次方大小的HashMap 比如3 实际创建的长度为2 2 4 以此类
  • Stream使用技巧(1)------数据处理技巧

    Stream使用技巧 1 数据处理技巧 一 背景 作为java8新特性之一的Stream API为开发者带来了极大的便利 它可以对我们需要操作的集合进行非常复杂的操作 以活的我们想要的结果 本文不会告诉你什么是Stream 毕竟网上花里胡哨
  • 【Java基础·Comparator多字段排序】

    Java基础 Comparator多字段排序 需求 对指定List按照 身份证号 姓名 入学时间倒序排列 版本1 package com biaogexf tools import lombok Data import java util
  • super()

    super 关键字 关键字的理解 父类中定义了该方法 但是子类中重写了该方法 使用super来修饰这个方法 在调用的时候调用父类的方法 super关键字的使用 1 super理解为父类 2 super可以用来调用 属性方法和构造器 3 su
  • ThreadCreationCmp

    package io github viscent mtia ch1 import io github viscent mtia util Tools public class ThreadCreationCmp public static
  • 第八章 多态(下)

    第八章 多态 下 本章多态目前就到此介绍完毕 可能还会有些疑问 不过后面还会有很多设计到多态的地方 通过不断学习 最后一定会将这些知识掌握的 同时这一章所讲解的知识也还是比较详细的 多态基本上都会在我们的代码中体现出来 只是之前不知道 不明
  • 什么是环境变量?为什么java要配置环境变量?

    本文是将https blog csdn net qq 37872792 article details 80642985 与 https blog csdn net Pre waist L article details 79696507两
  • 关于java中IO的个人理解

    一 什么是java的I O I O中的i为input即输入的意思 O为output输出的意思 所以io为java中数据的输入和输出 这里的数据即包括网络上的数据 socket 也包括本地的文件数据 IO使用流的概念来进行数据的输入和输出也就
  • 二进制、八进制、十进制、十六进制之间的相互转换

    一 二进制 八进制 十六进制转换为十进制 方法 位权求和法 二进制用符号 B 表示 十进制用符号 D 表示 八进制用符号 O 表示 十六进制用符号 H 表示 100101 10111 B 1 2 5 0 2 4 0 2 3 1 2 2 0
  • Java获取当前时间的年月日时分秒方法

    相关内容 package com ob import java text ParseException import java text SimpleDateFormat import java util Calendar import j
  • ⛳ 面试题-单例模式会存在线程安全问题吗?

    目录 面试题 单例模式会存在线程安全问题吗 一 单例模式 简介 二 饿汉式 三 懒汉式 3 1 懒汉式 在调用 getInstance 的时候才创建对象 线程不安全 3 2 改造1 对懒汉式进行加锁改造 线程安全 3 3 改造2 对懒汉式继

随机推荐

  • 2021-09-22

    AR1Int g0 0 0Ip address 192 168 1 1 24Int g0 0 1Ip address 20 20 30 97 30AR2Int g0 0 0Ip address 20 20 30 98 30Int g0 0
  • ThinkPHP5.0完全开发手册——调试模式

    调试模式 ThinkPHP有专门为开发过程而设置的调试模式 开启调试模式后 会牺牲一定的执行效率 但带来的方便和除错功能非常值得 我们强烈建议ThinkPHP开发人员在开发阶段始终开启调试模式 直到正式部署后关闭调试模式 方便及时发现隐患问
  • react框架学习总结(纯干货)

    首先 我先给出我学习react框架的参考教程 以下内容都是我依据此教程的个人总结 react教程 React与JSX function Square props return
  • C语言实现简单加密算法 凯撒密码 RSA算法 简介及实现

    凯撒密码的原理以及实现过程 1 算法介绍 凯撒密码的核心思想就是移位 将明文的每一个字符 在 密码系统所支持字符序列中向右平移N 映射得到新的字符从而实现加密 而解密则相反向左平移N 加密的Key即为N 2 实验测试 加密 解密 3 源代码
  • php代码审计【11】动态函数执行和匿名函数执行

    1 动态函数执行 函数与函数之间的调用 可能会造成的漏洞 缺陷代码 2 匿名函数 Anonymous functions 也叫闭包函数 closures 允许临时创建一个没有指定名称的函数 最经常用作回调函数 ca
  • libtool的作用及应用

    gcc library makefile archive command object 注意 本文为转载 原文也是转载 但是为了尊重他人得劳动成果 我将将转载网址贴出来 libtool常见于autoconf automake 单独用的例子很
  • xss绕过,payload全集

    XSS总结 xss分为三种 反射型xss DOM型XSS及存储型XSS 不同类型的XSS的危害不同 有兴趣的可以观看一下csdn上明智讲的关于XSS攻击及原理 https edu csdn net course detail 8585里面的
  • OMG,学它!java培训讲师面试技巧

    基础 JAVA基础 JAVA集合 JAVA多线程并发 网络 数据结构与算法 框架 Spring SpringMVC MyBatis 设计模式 分布式 负载均衡 Zookeeper Redis MQ kafka 微服务 Netty与RPC S
  • Linux常用的四种压缩命令

    文章目录 一 tar命令 二 gzip命令 三 rar命令 四 zip命令 总结 一 tar命令 语法 tar option file 常用参数 c或 create 建立新的备份文件 f lt 备份文件 gt 或 file lt 备份文件
  • Substance与PBR工作流总结

    关于PBR PBR即基于物理的渲染 是一套尝试基于真实世界光照物理模型的渲染技术合集 使用了一种更符合物理学规律的方式来模拟光线 达到更真实的渲染效果 而且可以直接通过物理参数来直观地达到想要的结果 不用通过拙劣的各种参数调整 物理参数一般
  • uni-app crypto-js DES 加解密 ,支持app , h5,小程序

    crypto js DES 加解密 支持app h5 小程序 第一步 npm install crypto js 可以直接下载示例运行 看控制台打印 下载地址 https ext dcloud net cn plugin id 13351
  • Git GitHub入门2:新建Git repository并提交修改

    选择一个文件夹 执行 git init 命令 we initialize an empty git repository in the current directory 要想使用ls 查看列表 需要换成Windows powershell
  • 利用WMI打造完美三无后门(scrcons.exe)

    Welcome 各位ScriptKid 欢迎来到脚本世界 今天忙了一天 比较累 不废话那么多了 切入正题 这个 三无 后门的核心就是WMI中的永久事件消费者ActiveScriptEventConsumer 以下简称ASEC WMI中有许多
  • 微电网日前优化调度 。算例有代码(3)

    个人电气博文传送门 学好电气全靠它 个人电气博文目录 持续更新中 在前文我对问题1 2进行了解答 本文对问题3 进行解答 由于本人非研究调度的 问题3求解阐述自己对比赛论文问题3的见解 问题3 最优日前调度方案二 若考虑蓄电池作用 且微网与
  • camera HSYNC:VSYNC

    HSYNC 行锁存 换行信号VSYNC 祯锁存 换页信号 320 240的屏 每一行需要输入320个脉冲来依次移位 锁存进一行的数据 然后来个HSYNC 脉冲换一行 这样依次输入240行之后换行同时来个VSYNC脉冲把行计数器清零 又重新从
  • MySql基础汇总-DDL DML DQL DCL,存储过程,事务,触发器,函数等

    use testdb 一 数据库操作语言 DDL 数据库定义语言 create drop alter DML 数据库管理语言 insert update delete DQL 数据库查询t usert student 语言 select D
  • upload-labs靶场全通关

    upload labs靶场全通关 pass 1 pass 2 pass 3 pass 4 pass 5 pass 6 pass 7 pass 8 pass 9 pass 10 pass 11 pass 12 pass 13 pass 14
  • linux如何入门

    微信设置水滴昵称 个性中带点萌 1 学习Linux之前先认识Unix l Unix是一个强大的多用户 多任务操作系统 l 于1969年在AT T的贝尔实验室开发 l UNIX的商标权由国际开放标准组织 The Open Group 所拥有
  • js逆向-常见DES加密

    声明 本文仅供参考学习 切勿用于他途 违者后果自负 前言 目标网站 aHR0cHM6Ly9wYXNzcG9ydC5jaGFuZ2hvbmcuY29tL2xvZ2luLmRvP3ZpZXc9dmlwJnNlcnZpY2U9aHR0cDovL2
  • 向上转型和向下转型

    一 概念 向上转型是指将子类的实例赋值给父类类型的变量 向下转型是指将父类的实例赋值给子类类型的变量 二 向上转型 1 向上转型后父类的引用所指向的属性是父类的属性 2 如果子类重写了父类的方法 那么父类引用指向的或者调用的方法是子类的方法