java向上转型

news2024/11/20 9:15:20

介绍

代码

父类

package b;

public class father_ {//father class
	String name="动物";
	int age=10;
	public void sleep() {
		System.out.println("睡");
		
	}
		
	public void run() {
		System.out.println("跑");
		
	}
	public void eat() {
		System.out.println("吃");
		
	}
	public void show() {
		System.out.println("你好");
		
	}
}

子类

package b;

public class graduate extends father_ {
		public void eat() {
			System.out.println("猫吃鱼");
			
		}
		public void catchmouse() {
			System.out.println("猫抓老鼠");
			
		}
	}

主类

package b;

public class main_ {

	public static void main(String[] args) {
		//向上转型,父类的引用转向了子类的
		father_ animal=new graduate();
		Object obj=new graduate();
		System.out.println(animal.catch);
		System.out.println(obj.name);
		
	}
	
}

向上转型就是我们前面讲的编译类是主类,运行类是子类,能调用的方法必须是子类和父类都有的,如果子类没有就按照查找原则找父类。并且不能调用子类特有的特有成员。因为对于我们

animal 的编译是father_,根本不知道catch是哪个

在编译阶段能够调用哪些成员是由编译类型决定的,你无法找到运行对象时的方法,

javac是看编译类型,即父类的。java看运行类型,即子类的。所以就有了运行时候的查找规则

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1720372.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

FreeRtos进阶——中断的内部逻辑

中断与非中断API的区别 BaseType_t xQueueSendToBack(QueueHandle_t xQueue,const void *pvItemToQueue,TickType_t xTicksToWait); BaseType_t xQueueSendToBackFromISR(QueueHandle_t xQueue,const void *pvItemToQueue,BaseType_t *pxHigherPriorityTaskWok…

Unity之XR Interaction Toolkit如何使用XRSocketInteractable组件

前言 在虚拟现实(VR)和增强现实(AR)开发中,交互性是提升用户体验的关键。Unity作为一个领先的游戏开发引擎,提供了多种工具支持VR/AR开发。Unity的OpenXR插件扩展了这一功能,提供了更强大和灵活的交互系统。其中一个非常有用的组件是XRSocketInteractable。本文将详细介…

Flutter基础 -- Dart 语言 -- 基础类型

目录 0. 配置 1. 变量 1.1 弱类型 var Object dynamic 1.2 强类型 1.3 使用场景 var 简化定义变量 查询参数定义 返回的实例对象 2. 常量 final 和 const 2.1 相同点 类型声明可以省略 初始后不能再赋值 不能和 var 同时使用 2.2 不同点 const 需要确定的值 …

深入解析HTTP方法与路由响应

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、HTTP方法概述 1. GET方法 2. POST方法 二、路由与响应处理 1. 路由的默认响应 2. 处…

若依分页问题排查

无限分页数据返回 一、问题排查1.1 代码排查1.2 sql排查1.3 原因分析 二、问题修复 项目使用了 若依的框架,前端反馈了一个问题,总记录条数只有 48条的情况下,传入的 页数时从6~~无穷大,每页大小为10, 此时还能返回数据&#xff0…

音视频直播(一)

协议基础篇 直播协议基础推流与拉流推流拉流 直播传输协议RTMP传输协议 && HTTP-FLV协议为什么RTMP做推流,反而很少做拉流?HTTP-FLV协议 RTSP协议HLS协议SRT协议 WebRTC协议应用于直播 直播协议基础 从网络上搜寻到的有关推流与拉流的示意图 从…

树莓派5烧系统和ssh远程实现

1、硬件说明 树莓派5 64G micro SD卡读卡器 2、烧录系统过程记录 之前写过一篇pi4B烧录Ubuntu22.04的博客,这篇就简单记录备份下 2.1 去ubuntu官网在树莓派上安装Ubuntu | Ubuntu下载Ubuntu 桌面 24.04 LTS 我之前已经下好了就有个(1) 2.2 用读卡器把SD卡插到…

【C++ ——— 哈希】位图 | 布隆过滤器

文章目录 1、位图1.1位图概念 2.位图实现位图的应用1.一百亿个整数,设计算法找到只出现一次的整数?2.给两个文件,分别有一百亿个整数,我们只有1G内存该如何找到两个文件的交集?3.位图应用变形:一个文件有100亿个int&a…

Java八股文:程序员的“面试经”还是技术壁垒?

Java八股文:程序员的“面试经”还是技术壁垒? “八股文”,在中国古代科举考试中,指的是一种程式化的文章写作格式,内容空洞,缺乏创新。而如今,这个词语被赋予了新的含义,用来形容技术…

systemctl 添加自定义系统服务

以 “启动、停止、重启” boa web server为例: 1. 编写系统服务脚本 编写一个符合系统服务规范的脚本。这个脚本通常描述了服务的启动、停止、重启等行为。你可以使用shell、C、C、Java等语言来编写这个脚本。 # boa_server_run.sh:#!/bin/bashset -e …

软考随记(二)

I/O系统的5种不同的工作方式: 程序控制方式: 无条件查询:I/O端口总是准备好接受主机的输出数据,或是总是准备好向主机输入数据,而CPU在需要时随时直接利用I/O指令访问相应的I/O端口,实现与外设的数据交换 …

解决uni-app progress控件不显示问题

官方代码&#xff1a; <view class"progress-box"><progress :percent"80" show-info activeColor"red" stroke-width"10" /> </view> 进度条并不在页面中显示&#xff0c;那么我们需要给进度条加上宽高style"…

Appium安装及配置(Windows环境)

在做app相关自动化测试&#xff0c;需要使用appium来做中转操作&#xff0c;下面来介绍一下appium的环境安装配置 appium官方文档&#xff1a;欢迎 - Appium Documentation 一、下载appium 下载地址&#xff1a;https://github.com/appium/appium-desktop/releases?page3 通…

对未知程序所创建的 PDF 文档的折叠书签层级全展开导致丢签的一种解决方法

对需要经常查阅、或连续长时间阅读的带有折叠书签的 PDF 文档展开书签层级&#xff0c;提高阅览导航快捷是非常有必要的。 下面是两种常用书签层级全展开的方法 1、 FreePic2Pdf 1 - 2 - 3 - 4 - 5 - 6&#xff0c;先提取后回挂 2、PdgCntEditor 载入后&#xff0c;直接保存…

如何选择国产数据库?

ORACLE的强大是全方位的,作为甲方DBA,喝喝咖啡,看看报纸,开开会,临听一下ORACLE ACE吹水! 作为国企的DBA, CTO.基本上国企都算是传统行业,都是跑ERP系统,进销存系统.客户关系系统.基本上都是B2B业务. 直接面对普通老百姓的互联网业务非常少. 核心业务都是使用ORACLE,少量互联网…

官网:管它日薄西山or蒸蒸日上,气质这块,必须拿捏死死的。

在日薄西山的时候&#xff0c;网站建设面临着许多困难和挑战。市场竞争激烈&#xff0c;用户需求多样化&#xff0c;技术更新迅速&#xff0c;这些都要求我们在网站建设中拥有高尚的气质。 而在蒸蒸日上的时刻&#xff0c;网站建设同样需要我们拿捏好气质。只有坚持下去&#…

VScode远程连接linux服务器开发,误删了文件怎么找回。

VScode远程连接linux服务器开发&#xff0c;误删了代码文件 因为远程服务器大家都在用&#xff0c;没有足够权限去折腾。找遍了没找到方法&#xff0c;就告诉我远程的文件本地没有缓存啊&#xff01;我就差点开始重写代码了。 后来被我发现了TIMELINE功能&#xff0c;这个功能…

瓦罗兰特国际服 马来西亚服低价区有哪些 瓦罗兰特低价区排行

瓦罗兰特国际服 马来西亚服低价区有哪些 瓦罗兰特低价区排行 瓦罗兰特作为当今游戏圈内热度最高的一款游戏&#xff0c;在全世界范围内都有着许多的游戏玩家。游戏基础玩法延续了FPS经典的5v5玩法&#xff0c;同时开发商在不同的游戏角色上添加了不同的技能&#xff0c;使得游…

Qt xml学习之calculator-qml

1.功能说明&#xff1a;制作简易计算器 2.使用技术&#xff1a;qml,scxml 3.项目效果&#xff1a; 4.qml部分&#xff1a; import Calculator 1.0 //需要引用对应类的队友版本 import QtQuick 2.12 import QtQuick.Window 2.12 import QtQuick.Controls 1.4 import QtScxml…

Springboot JVM监控 通过Promethus

Springboot内置了对Prometheus得支持&#xff0c;可以监测得点有&#xff1a; JVM各指标参数&#xff08;GC&#xff0c;堆&#xff0c;非堆等&#xff09;接口调用次数&#xff0c;延时系统内存&#xff0c;IO&#xff0c;CPU使用率 部署Prometheus和Grafana 准备一台2核4G…