java的继承特性和方法重写

java的继承特性和方法重写

Java的继承特性是一种面向对象编程的重要概念,它允许我们基于已有的类创建新的类,并且保留了已有的类的一些特性。这是通过使用"继承"这个关键词来实现的,新创建的类称为子类(subclass),已有的类称为父类(superclass)。
在java中一个子类可以有多个父类也叫多继承,子类会继承父类里的属性,当然父类也可以通过Private来对继承的属性进行控制

方法继承

继承通过使用extends关键字来继承父类,演示代码如下
先定义一个学生类

import java.util.Scanner;public class student  {public String name;public int course;public int age;public void behavior(){System.out.println("I am student");}
}

在定义一个继承类

import java.security.PrivateKey;
import java.util.Scanner;class Inherit extends student{public void behavior() {System.out.println("我是一个学生");}
}

这样这个继承类就继承了student的属性
这样我们看不出来 我们新定义一个类,对他进行调用

import  java.util.*;
public class Xl {public static void main(String[] args) {Inherit stu1 =new Inherit();stu1.name = "张三";stu1.age = 18;System.out.println("姓名:" + stu1.name + " 年龄:" + stu1.age);}
}

可以看到我们继承类中没有名字年龄的属性因为继承的关系也存在了这些属性
在这里插入图片描述

重写

Java中的方法重写(Method Overriding)是指在子类中重新定义(或覆盖)其父类中的同名方法,使其具有不同的实现。当子类对象调用该方法时,将执行子类中的方法实现,而不是父类中的实现。

方法重写的前提是子类与父类之间存在继承关系,且子类中的方法与父类中的方法具有相同的方法名、参数列表和返回类型。在子类中定义与父类同名的方法时,需要在方法前面使用@Override注解,这样可以帮助编译器检查是否正确地重写了父类中的方法。

使用方法重写可以在不同的子类中实现相同的行为,但是具体的实现方式可以根据子类的需求进行定制。方法重写是面向对象编程中实现多态性的一个重要手段。

接下来用代码进行演示 还是刚才那个继承代码我们在里面是定义了一个behavior()成员方法的但是父类也有这个方法这个方法就不会被继承会进行重写输入为子类的成员方法
调用一下该方法

import  java.util.*;
public class Xl {public static void main(String[] args) {Inherit stu1 =new Inherit();stu1.behavior();}
}

在这里插入图片描述
我们可以看到输出的是子类的成员方法
这就是继承与方法重写

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

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

相关文章

Spark---核心介绍

一、Spark核心 1、RDD 1)、概念: RDD(Resilient Distributed Datest),弹性分布式数据集。 2)、RDD的五大特性: 1、RDD是由一系列的partition组成的 2、函数是作用在每一个partition(split…

Linux 磁盘/分区/修复 命令

目录 1. lsblk(list block devices) 2. fdisk(fragment disk) 3. gdisk 4. mkfs(make filesystem) 5. df(display file-system disk space usage) 6. du 7. fsck(file-sy…

Android修行手册-POI操作Excel文档

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分…

从零开始学习typescript——变量

就像我们在学校学习语文、英文时候一样,最开始学习的是语法,要知道基础的结构。 图片中包含 变量、标识符、数据类型、运算符、字面量、表达式、控制语句等语法 变量 变量是使用给定的符号名在内存中申请存储地址,并且可以容纳某个值。 语…

多篇论文介绍-可变形卷积

01 具有双层路由注意力的 YOLOv8 道路场景目标检测方法 01 摘要: 随着机动车的数量不断增加,道路交通环境变得更复杂,尤其是光照变化以及复杂背景都会干扰目标检测算法的准确性和精度,同时道路场景下多变形态的目标也会给检测任务造成干扰&am…

浅谈低压绝缘监测及定位系统在海上石油平台的研究与应用

安科瑞 华楠 摘要:海上石油平台低压系统与陆地电力系统有很大区别,其属于中性点绝缘系统,在出现单相接地故障时,系统允许带故障正常运行2 h,保证海上重要电气设备不会立即关停。现以渤海某海上平台为例,其…

可上手 JVM 调优实战指南

文章目录 为什么要学 JVM一、JVM 整体布局二、Class 文件规范三、类加载模块四、执行引擎五、GC 垃圾回收1 、JVM内存布局2 、 JVM 有哪些主要的垃圾回收器?3 、分代垃圾回收工作机制 六、对 JVM 进行调优的基础思路七、 GC 情况分析实例八、最后总结 全程可上手JVM…

steam游戏找不到steam_api64.dll,分享三个有效的解决方法

在现代科技发展的时代,游戏已经成为了许多人生活中不可或缺的一部分。而Steam作为全球最大的数字发行平台之一,拥有着庞大的游戏库和活跃的用户群体。然而,在使用Steam时,有些用户可能会遇到Steam_api64.dll丢失的问题&#xff0c…

我在Vscode学OpenCV 几何变换(缩放、翻转、仿射变换、透视、重映射)

几何变换指的是将一幅图像映射到另一幅图像内的操作。 cv2.warpAffine:使用仿射变换矩阵对图像进行变换,可以实现平移、缩放和旋转等操作。cv2.warpPerspective:使用透视变换矩阵对图像进行透视变换,可以实现镜头校正、图像纠偏等…

Positive证书:最便宜的SSL证书

在当今数字化的时代,网上交易和信息传输已经成为我们生活中不可或缺的一部分。然而,随着网络犯罪的增加,确保在线信息的安全性变得尤为重要。Positive证书作为一种经济实惠的数字证书,在提供有效安全性的同时,为用户提…

C# Onnx 特征匹配 DeDoDe 检测,不描述---描述,不检测

目录 介绍 效果 模型信息 项目 代码 下载 介绍 github地址:https://github.com/Parskatt/DeDoDe DeDoDe 🎶 Detect, Dont Describe - Describe, Dont Detect, for Local Feature Matching The DeDoDe detector learns to detect 3D consisten…

Redis主从,缓存击穿,雪崩,哨兵等问题

Redis的性能管理: Redis的数据缓存在内存当中 INFO memory used_memory:853808 Redis中数据占用的内存 used_memory_rss:3715072 Redis向操作系统申请的内容 used_memory_peak:853808 Redis使用的内存的峰值 系统巡检:硬件巡检,数据库…

解析IBM SPSS Statistics 26 forMac/win中文版:全面统计分析解决方案

作为一款强大的统计分析软件,IBM SPSS Statistics 26(spss统计软件)在全球范围内被广泛使用。无论是学术研究、市场调研还是商业决策,SPSS统计软件都能提供全面的解决方案,帮助用户快速、准确地分析数据。 首先&#…

第二证券:什么是权重股?权重股可以长期持有吗?

权重版块是指该版块股票市值巨大,在股票总市值中的比重很大(即权重很大),其涨跌对股票指数的影响很大的一个版块,比方,商场上的证券、钢铁、银行、保险、石油等板块的个股。 权重股适合长时间持有&#xf…

Mac- Iterm 2 (替换mac terminal 终端的下一代终端工具)

1.应用场景 主要用于macOS中作为终端工具使用, 执行终端命令, Iterm 2 (替换mac terminal 终端的下一代终端工具) 2.学习/操作 1.文档阅读 chatgpt & 其他资料 2.整理输出 2.1 是什么 Iterm 2 (替换mac terminal 终端的下一代终端工具) 2.2 为什么需要「应用场景」 macOS…

skywalking中gateway的拓扑图没有出现

背景: 刚开始的时候gateway没有出现,后来百度说添加插件的jar包, apm-spring-cloud-gateway-2.1.x-plugin-8.15.0.jar apm-spring-webflux-5.x-plugin-8.15.0.jar 然后解决了gateway节点出来了, 但是:拓扑图却是User指…

利用NVIDIA DALI读取视频帧

1. NVIDIA DALI简介 NVIDIA DALI全称是NVIDIA Data Loading Library,是一个用GPU加速的数据加载和预处理库,可用于图像、视频和语音数据的加载和处理,从而为深度学习的训练和推理加速。 NVIDIA DALI库的出发点是,深度学习应用中…

文心大模型商业化领跑,百度在自我颠覆中重构生长力

随着科技巨头竞逐AI大模型,人工智能技术成为今年最受瞩目的新技术。但是,AI大模型的创新之路,还缺少一个足够有力的商业化答案。 作为全球最先发布大模型的互联网大厂,百度能否加速大模型的应用落地,以及文心大模型能…

C++ Boost 实现异步端口扫描器

端口扫描是一种用于识别目标系统上哪些网络端口处于开放、关闭或监听状态的网络活动。在计算机网络中,端口是一个虚拟的通信端点,用于在计算机之间传输数据。每个端口都关联着特定类型的网络服务或应用程序。端口扫描通常是网络管理员、安全专业人员用来…

springboot项目中获取业务功能的导入数据模板文件

场景: 在实际业务场景中,经常会遇到某些管理功能需要数据导入共功能,但既然是导入数据,肯定会有规则限制,有规则就会有数据模板,但这个模板一般是让客户自己下载固定规则模板,而不是让客户自己随便上传模板。下面介绍直接下载模板 一、下载模板示例 1、在项目的…