java继承

1.为什么需要继承

我们编写了两个类,一个是Puppil类(小学生),一个是Graduate(大学生),问题:两个类的属性和方法有很多是相同的,怎么办?

把共有的属性和方法抽离出来:

父类:

package com.hspedu.extends01;//父类,是Pupil和Graduate的父类
public class Studnet {//    共有属性public String name;public int age;private double score; //成绩
//    共有方法public void setScore(double score) {this.score = score;}public void showInfo() {System.out.println("学生名" + name + "年龄" + age + "成绩" + score);}
}

大学生类:

package com.hspedu.extends01;public class Graduate extends Studnet {public void testing() {System.out.println("大学生" + name + "正在考大学数学..");}
}

小学生类:

package com.hspedu.extends01;
public class Pupil extends Studnet {//    让Pupil继承Student类public void testing() {System.out.println("小学生 " + name + "正在考小学数学..");}
}

运行的结果:

上述的例子中,有三个属性两个方法相同,因此可以抽离出来,减少代码的冗余,另外不同的在单独的类里面写,然后用extends继承父类里面的方法。

2.基本的语法

class 子类  extends 父类{}

1.子类就会自动拥有父类定义的属性和方法

2.父类又叫超类,基类。

3.子类又叫派生类

0288_韩顺平Java_继承使用细节1_哔哩哔哩_bilibili图来自

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

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

相关文章

UE5 C++(六)— 枚举UENUM、结构体USTRUCT和补充属性说明符

文章目录 枚举(ENUM)第一种方式第二种方式 结构体(USTRUCT)补充属性说明符(ExposeOnSoawn)结构体创建数据表格 枚举(ENUM) 第一种方式 定义枚举 UENUM(BlueprintType) namespace …

2023.12.18Linux部署项目

动态查看最新内容 防火墙不能杀毒,只能限制服务器的哪些端口可以被访问 哪些主机可以访问本服务器 防火墙开启之后默认封闭所有端口,自己再用策略声明把哪些端口放开 ksh jdk:二进制包 MySQL:rpm包 Redis:源码…

RTLS 解决现实场景的25种问题

实时定位系统 (RTLS) 可以改变我们理解周围世界的方式。 想想你有多少次停下来寻找某样东西。您可能正在寻找钥匙、电话、鞋子、零食、背包、办公室中的重要文件、停车场中的车辆,或者可能正在寻找街道标志或地标来引导自己。我们大多数人每天都会希望更好地了解我…

7.1组合及其优化(LC77-M)

算法: 第一次取1 2 3 4 取1时,留下234 取2时,留下34 取3时,留下4 取4时,留下null 接着继续取234中的2,与1组合,得到12 取234中的3,与1组合,得到13 取234中的4&#…

ElasticSearch详细搭建以及常见错误high disk watermark [ES系列] - 第497篇

导读 历史文章(文章累计490) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六…

PHP使用symfony/process来实现多进程请求url或执行多个php文件

1、什么是symfony/process? Symfony/Process是Symfony框架中的一个组件,用于处理和管理子进程。它提供了一个简单易用的API,可以执行外部命令,并与子进程进行交互。 Symfony/Process可以执行各种操作系统命令,如运行…

Amazon CodeWhisperer 在 vscode 的应用

文章作者:旧花阴 CodeWhisperer 是一款可以帮助程序员更快、更安全地编写代码的工具,可以在他们的开发环境中实时提供代码建议和推荐。亚马逊云科技发布的这款代码生成工具 CodeWhisperer 最大的优势就是对于个人用户免费。以在 vscode 为例,演示安装过程…

百度地图添加坐标点,并返回坐标信息

1、创建地图容器 在mounted中初始化地图、鼠标绘制工具和添加鼠标监听事件 vue data中添加地图和绘制工具对象 2、添加初始化化地图方法 initMap(longitude, latitude) {let that thisthat.map new BMapGL.Map("container");// 创建地图实例if (longitude null ||…

使用SQL和Python处理Excel文件数据

目录 一、引言 二、使用SQL查询Excel文件数据 1、导入必要的库 2、创建数据库连接 3、读取Excel文件数据 4、将数据写入数据库 5、使用SQL查询数据 三、使用Python读取和处理Excel文件数据 1、导入必要的库 2、读取Excel文件数据 3、数据处理和分析 4. 将数据可视化…

【C盘清理】Jetbrains全家桶(PyCharm、Clion……)更改 IDE 特定文件(配置、缓存、插件、日志等)存储位置

文章目录 一、官网说明二、更改 IDE 目录的位置1. 转到“帮助”|“编辑自定义属性”2. 各文件位置3. 以PyCharm系统目录为例4. 修改idea.properties 三、清理旧的 IDE 目录 一、官网说明 IDE 使用的目录官网说明 二、更改 IDE 目录的位置 默认情况下,PyCharm 将每…

【DOM笔记一】什么是DOM?获取元素的方法有哪些?什么是事件以及事件的三要素包括哪些?

文章目录 1 引入1.1 JS组成1.2 API 和 Web API1.3 DOM1.4 DOM树 2 获取元素2.1 通过ID获取2.2 通过标签名获取2.3 通过类名的方法获取2.4 获取特殊元素 3 事件基础 1 引入 1.1 JS组成 JS基础 阶段:ECMAScript 只是标准规定的基本语法,做不了常用的网页…

GaussDB数据库表创建行访问控制策略

目录 一、前言 二、GaussDB中的行访问控制 1、CREATE ROW LEVEL SECURITY POLICY语法 2、ALTER ROW LEVEL SECURITY POLICY语法 3、ROW LEVEL SECURITY策略与适配SQL语法关系 三、GaussDB中的行访问控制策略示例 1、实现GaussDB行访问控制的一般步骤 2、行访问控制策略…