当前位置: 首页 > news >正文

JAVA 基础学习之 继承与方法覆写

1 继承引入​​​​​​​

三个类都有重复的代码,可以把这共同的代码抽出去,抽出去放到另外一个类里面;下面的3个类和上面的类需要发生一点关系(继承),上面的类叫做 父类(超类,基类,根类),下面的类叫子类(派生类,拓展类);

        好处 : 提高了代码的复用性

​​​​​​​继承作用

代码复用,提高开发效率和程序的扩展性。

Java中类继承的基本语法

① Java类中的继承的语法格式:

class A{}

class B extends A{}

A 就是B的父类、基类、根类、超类

B是A的子类、派生类、拓展类

② 验证:子类中是否可以继承到父类中的东西(通过创建子类对象来操作从父类继承的东西)

父类:public class Animal {String name;int age;public void eat() {System.out.println("吃");}}子类:public class Person extends Animal{/*** 人类独有方法*/public void coding() {System.out.println("敲代码...");}}public class Pig extends Animal{/*** 猪类独有方法*/public void gongBaiCai() {System.out.println("拱白菜...");}}public class Bird extends Animal{/*** 鸟类独有方法*/public void fly() {System.out.println("飞...");}}测试类:/*** 继承测试类*/public class AnimalTest {public static void main(String[] args) {//创建子类对象Person person = new Person();Pig pig = new Pig();//通过子类对象调用父类继承过来的成员person.name = "张三";person.age = 1;person.eat();System.out.println(person.name);System.out.println(person.age);//调用子类特有方法person.coding();pig.name = "佩奇";pig.age = 7;pig.eat();System.out.println(pig.name);System.out.println(pig.age);//调用子类特有方法pig.gongBaiCai();}}

子类可以从父类继承哪些成员?

除了构造方法不能被继承其他都可以继承过来

但是,私有化成员不能直接通过子类对象直接访问,但是可以通过继承过来的公共方法间接访问 代码如下:

public class Animal {String str;private int a;static int b;public Animal() {System.out.println("无参构造...");}public Animal(int a) {System.out.println("有参构造...");}public void test() {System.out.println("普通方法");}public static void testStatic() {System.out.println("静态方法..");}private void testPrivate() {System.out.println("私有化方法..");}public int getA() {return a;}public void setA(int a) {this.a = a;}}public class Person extends Animal{/*** 人类独有方法*/public void coding() {System.out.println("敲代码...");}}测试代码:/*** 测试继承哪些成员*/public class AnimalTest {public static void main(String[] args) {//创建子类对象Person person = new Person();//通过子类对象调用父类继承过来的普通成员变量person.str = "张三";//通过子类对象调用父类继承过来的私有化成员变量// person.a = 1;//不能通过子类对象直接调用父类私有化成员//通过子类对象调用父类继承过来的静态成员变量// person.b = 2;//不要这样用。 这里编译的时候,会将person对象直接编译为类名的方式//通过子类对象调用父类继承过来的普通方法person.test();//通过子类对象调用父类继承过来的静态方法// person.testStatic();//不要这样用。 这里编译的时候,会将person对象直接编译为类名的方式//通过子类对象调用父类继承过来的私有化方法// person.testPrivate();//不能直接调用私有化方法//子类调用可以通过父类公共方法间接调用父类中私有化的成员person.setA(69);int a = person.getA();System.out.println(a);//69//调用Object继承过来的方法int hashCode = person.hashCode();System.out.println(hashCode);}}

 

2.4 Java中类的继承特点(重点)

单继承(一个类只能够有一个直接父类)

多重继承(多层级的继承), 一个类可以有子类,子类还可以子类...  

示例:

class A{}

class B extends A{}

class C extends B{}

class D extends C{}

③ 每一个类都有一个直接父类,如果没有看到显示的继承代码,那么就隐式继承Object

 

方法覆写(重写,Override)

方法覆写的引入(为什么需要覆写方法)

重载Overload:同类同名不同参

方法覆写作用:

保证业务逻辑合理性

3.3 方法覆写语法

直接将父类中要重写的方法复制到子类后,重写方法体即可

1)重写只能出现在继承关系之中。当一个类继承它的父类方法时,都有机会重写该父类的方法。

前提是父类的方法没有被被final(中文意思:最终的,以后讲)修饰

2)子类方法和父类方法的方法签名(方法名+参数列表)完全一致;

3)访问权限 : 子类方法的访问权限 大于等于父类方法的访问权限

4)static/private 方法不能够被重写 (java语法)

5)返回值类型 : 子类方法的返回值类型可以是父类方法的返回值类型的子类或者相等             

6)子类抛出的异常(Exception)下是父类相应方法抛出的异常或者相等

实例代码:public class Animal {public void eat() {System.out.println("吃");}}public class Person extends Animal{@Override//注解,编译期起作用,校验代码public void eat() {System.out.println("吃猪");}}public class Pig extends Animal{public void eat() {System.out.println("吃白菜。。。。");}}测试代码/*** 方法重写测试类*/public class AnimalTest {public static void main(String[] args) {//创建子类对象Person person = new Person();Pig pig = new Pig();person.eat();//执行子类重写后方法pig.eat();//执行子类重写后方法}}

 

方法覆写注意事项:

1. 并不是每一个继承过来的方法都要重写

2. 并不是每一个子类都要重写父类继承过来的方法

 

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

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

个性化个人主页html5模板

介绍: 个性化个人主页html5模板 网盘下载地址: http://kekewl.net/tARDuX5n02U0 图片:...

java IO教程《三》

缓冲区流讲解(Buffered) 什么是缓冲区? 缓冲流,也叫高效流,是对4个基本的File流的增强,所以也是4个流,按照数据类型分类: 字节缓冲流:BufferedInputStream,BufferedOutputStream字…...

elementUI-Tree 树形控件的使用

elementUI-Tree 树形控件的使用 实现效果: 控件的官方使用说明 控件要求返回的数据结构 {"success": true,"code": 20000,"message": "成功","data": {"items": [{"id": "1394579386…...

实训第一天以及第二天所学记录

实训第一天以及第二天所学记录 浏览器内核 IE:Trident Firefox:Gecko Chrome:Webkit / Blink Safari:Webkit Opera:Presto / Blink 在VScode中使用注释的快捷键 按住键盘的Ctrl/ 元素 (标签 标记&…...

跨域请求

/* * Description: 配置文件 */ module.exports { publicPath: "./", devServer: { open: true, proxy: "http://106.15.179.105/api" //跨域路径 }, }; // proxy是代理的意思 // 代理跨域就是在欺骗浏览器 让浏览器认为你访问的还是 同…...

Mac os下通过Anaconda在远程服务器配置python虚拟环境

一、SSH管理软件 这里推荐一款本人正在使用的软件,Termius。Termius是一款非常好用而且漂亮的SSH客户端,能快速远程控制服务器,可以定制自己喜欢的主题.Termius不仅涵盖了Windows、Linux、OSX,还变态得支持Android和iOS&#xff…...

Labview需求(部分)

本人从事工控行业多年,有一些资源,目前labview的单子干不过来了,想找几个靠谱的labview工程师跟我合作,想做兼职,接单的labview工程师可以私聊我,另外我有一些项目还需要跟单片机工程师,plc工程师,fpga工程师合作,欢迎大家找我合作!以下是手里比较着急的项目,需要外包 需求1&am…...

2021java1年经验公司面试真题

1面我就省略了,主要就是看你的以前工作情况,以前工作内容能不能清晰表达,还有一些简单的java基础问题,大概20多分钟。二面就是40分钟基础,20分钟业务,10分钟个人情况。下面是二面问题 1.自我介绍 做一下自…...

Unity基础之C#核心篇笔记4:多态

Unity基础之C#核心篇笔记4:多态多态1.多态的概念2.解决的问题3.多态的实现4.总结抽象类和抽象方法1.抽象类2.抽象函数3.总结4.练习题接口1.接口的概念2. 接口的申明3.接口的使用4.接口可以继承接口5.显示实现接口6.总结7.练习题密封方法1.密封方法基本概念2.实例3.总…...

LeetCode每日一题 - 有多少小于当前数字的数字

题目&#xff1a; 给你一个数组 nums&#xff0c;对于其中每个元素 nums[i]&#xff0c;请你统计数组中比它小的所有数字的数目。 换而言之&#xff0c;对于每个 nums[i] 你必须计算出有效的 j 的数量&#xff0c;其中 j 满足 j ! i 且 nums[j] < nums[i] 。 以数组形式返回…...

用Python爬取彼岸图网图片

用Python爬取彼岸图网图片 *使用了 四个模块 import time import requests from lxml import etree import os 没有的话自行百度安装。 #encoding utf-8 import time import requests from lxml import etree import os# http://www.netbian.com/ 爬虫 if __name__ __mai…...

第k个数(快速选择)

算法思路 快速选择&#xff1a; 1.即任意选一个数&#xff0c;将数组划分为二。 2.最终根据该数所在的位置&#xff0c;即第&#xff1f;大&#xff0c;选择第k大的数字所在区间进行划分。 时间复杂度分析&#xff0c;第一次划分n,下一次划分期望n/2&#xff0c;n/4…累加和小…...

yolov5 detect.py报错

新手求助 yolov5训练了自己的数据集后&#xff0c;test没问题&#xff0c;但是运行detect.py就报错了&#xff0c;一直找不到问题所在&#xff0c; 求大佬指点指点...

DEX 争霸战火升级,BabySwap 会否成为下一代黑马?

在 AMM机制大力推动下&#xff0c;DEX的群雄争霸比预想中来得要快且凶猛。伴随着诸如高盛等主流资本逐步认可DeFi 的意义&#xff0c;在真正的去中心化金融爆发的前夜&#xff0c;可以说谁抢占了DEX 红海的先机&#xff0c;谁就赢得了未来。 从早期以太坊的Uniswap和DoDo&…...

flutter 常用的第三方组件

引用文章链接&#xff1a; https://www.jianshu.com/p/a523e5f131b2 1、格式化日期时间组件&#xff1a;https://pub.dev/packages/date_format 2、日期选择组件&#xff1a;https://pub.dev/packages/flutter_cupertino_date_picker 3、轮播图组件&#xff1a;https://pub.…...

Android面试回忆录:帮助程序员提高核心竞争力的30条建议,真香!

**新技术层出不穷&#xff0c;去年kotlin到如今Flutter&#xff0c;技术迭代&#xff0c;你是否会变得固步自封&#xff1f;**那么看本篇文章帮你解决问题&#xff0c;让你知道怎么样学习&#xff0c;学习那些技术点才能不被时代的迭代快速淘汰&#xff01; 首先&#xff0c;先…...

2021-05-30解决centos+宝塔面板,FTP传输421 Too many connections问题错误

解决centos宝塔面板&#xff0c;FTP传输421 Too many connections”问题错误 1、首先连入服务器 在/www/server/pure-ftpd/etc下&#xff0c;找到pure-ftpd.conf 2、vim pure-ftpd.conf 没有vim的&#xff0c;用其他编辑软件也可以 3、找到 #Maximum number of sim clients wit…...

RK3399 DDR频率修改

RK3399 DDR频率修改 一、DDR当前频率获取与可调节范围 1、获取当前DDR频率、可调值、容量 cat /sys/class/devfreq/dmc/cur_freq2、查看DDR频率可调节的值 cat /sys/class/devfreq/dmc/available_frequencies3、获取DDR容量 cat /proc/meminfo二、DDR测试定频 1、因为RK3…...

javascript正则表达式常用合集

javascript正则表达式常用的合集 参考网址 {n}: n 是一个正整数&#xff0c;匹配了前面一个字符刚好出现了 n 次 {n,}: n是一个正整数&#xff0c;匹配前一个字符至少出现了n次 {n,m}: n 和 m 都是整数。匹配前面的字符至少n次&#xff0c;最多m次。如果 n 或者 m 的值是0&…...

qApp加载qss技巧

使用Qt加载qss样式&#xff0c;一般操作是读取文件&#xff0c;通过setStyleSheet设置 但是qApp只需如下&#xff1a; qApp->setStyleSheet("file:///:/test.qss");//只适用于qApp...

秒杀系统 - 实现用户登录(两次MD5,JSR303参数检验,全局异常处理器)和分布式session功能

文章目录用户登录数据库设计明文密码两次MD5处理加密思路安全性加密过程导入MD5依赖封装MD5Utils实现登录页面JSR303参数检验简介流程导入依赖常用注解自定义注解测试全局异处理器原因流程GlobalException类GlobalExceptionHandler类接口测试分布式sessionsession和 cookie流程…...

测试为什么不够敏捷?美团资深软测工程师为你解答

测试是为了保证软件的质量&#xff0c;敏捷测试关键是保证可以持续、及时的对软件质量情况进行全面的反馈。由于在敏捷开发过程中每个迭代都会增加功能、修复缺陷或重构代码&#xff0c;所以在完成当前迭代新增特性测试工作的同时&#xff0c;还要通过回归测试来保证历史功能不…...

First Day | Web前端 | 实训笔记~

注释 解释说明代码&#xff0c;隐藏代码 注释不能嵌套 语法实现&#xff1a;<!--注释内容--> 常用标签&#xff1a; 1、<p>段落</p> 2、<a>链接</a> ①href&#xff1a;创建指向另一个文档的链接 <a href"/index.html">本…...

【Laravel3.0.0源码阅读分析】会话驱动类driver.php

<?php namespace Laravel\Session\Drivers;interface Driver {/*** Load a session from storage by a given ID.* 通过给定的ID从存储加载会话。* If no session is found for the ID, null will be returned.** param string $id* return array*/public function load(…...

抢占式优先权调度算法

在这种方式下&#xff0c;系统同样是把处理机分配给优先权最高的进程&#xff0c;使之执行。但在其执行期间&#xff0c;只要又出现了另一个其优先权更高的进程&#xff0c;进程调度程序就立即停止当前进程(原优先权最高的进程)的执行&#xff0c;重新将处理机分配给新到的优先…...

以GraalVM原生镜像的方式运行Spring Boot应用程序

Spring Boot &GraalVM–系列共有3个部分&#xff1a; 第1部分&#xff1a;以GraalVM原生镜像运行Spring Boot应用程序第2部分&#xff1a;使用Docker&Heroku容器运行Spring BootGraalVM原生镜像第3部分&#xff1a;使用原生镜像maven插件简化Spring Boot GraalVM原生镜…...

实训第一天以及第二天所学记录

实训第一天以及第二天所学记录 浏览器内核 IE&#xff1a;Trident Firefox&#xff1a;Gecko Chrome&#xff1a;Webkit / Blink Safari&#xff1a;Webkit Opera&#xff1a;Presto / Blink 在VScode中使用注释的快捷键 按住键盘的Ctrl/ 元素 &#xff08;标签 标记&…...

jvm对象

1.对象的创建 对象的创建大概可以分为5步&#xff0c;流程如下图所示 1.类加载检查 虚拟机遇到一条new指令时&#xff0c;首先在常量池中定位到这个类的符号引用&#xff0c;然后检查这个符号引用代表的类是否已经被加载过、解析和初始化过&#xff0c;如果没有&#xff0c;…...

工作集替换算法

工作集替换算法局部最佳页面替换算法工作集模型和工作集置换算法模拟工作集替換算法缺页频率替换算法局部最佳页面替换算法 1976年由 Pieve提出一种局部最佳页面替换算法&#xff0c;它与全局最佳替换算法类似&#xff0c;需事先知道程序的页面引用串&#xff0c;再根据进程行…...

洛谷:P1831 杠杆数(数位dp)

文章目录描述解析代码thanks for reading&#xff01;传送门描述 如果把一个数的某一位当成支点&#xff0c;且左边的数字到这个点的力矩和等于右边的数字到这个点的力矩和&#xff0c;那么这个数就可以被叫成杠杆数。 比如4139就是杠杆数&#xff0c;把3当成支点&#xff0c…...

2019最全Java实战开发今日头条资讯网站

课程目录 第1节 开发工具和Java语言介绍 主要介绍项目所需要的开发工具&#xff0c;并且会简单回顾这个项目所用到的语言-java&#xff0c;语法基础&#xff0c;控制流&#xff0c;数据结构&#xff0c;面向对象&#xff0c;异常&#xff0c;随机数等。 第2节 Spring入门和模板…...

广告新生态体系资讯网站汇总

http://www.rtbchina.com/ http://www.adexchanger.com/...

国外有哪些知名的游戏资讯网站或博客?

国外其中主要是 美国、日本 这个两个国家。谢谢&#xff01; 游戏观察网站主要是游戏资讯、测评、推荐等内容。 楚云帆游戏爱好者喔&#xff0c;第一次在知乎被邀... 欧美 产业方面基本看Gamasutra&#xff08;www.gamasutra.com/&#xff09;就好了&#xff0c;欧美游戏产业…...

财经资讯网站--某联社参数破解

本文仅供学习&#xff0c;如有侵权或问题联系博主&#xff0c;感谢阅读 目标链接&#xff1a;aHR0cHM6Ly93d3cuY2xzLmNuL2RlcHRoP2lkPTEwMDA 抓包分析&#xff1a; 可以看到加密参数只有一个sign&#xff0c;像这种sign的一搜肯定一堆。所以我拿sv去搜了&#xff0c;看着像m…...

信息安全资讯网站总结

http://1.johnhome.sinaapp.com/?p189...

产品经理常去的行业资讯网站

QUORA&#xff1a;https://www.quora.com知乎: https://www.zhihu.com/36Kr:http://36kr.com/少数派:https://sspai.com/Medium: https://www.medium.comNext:http://next.36kr.com/posts投资界:http://www.pedaily.cn/钛媒体:http://www.tmtpost.com/虎嗅:https://www.huxiu.c…...

Unity游戏框架搭建

要想学好一个东西&#xff0c;首先要对其有基本的了解&#xff0c;并且对其感兴趣&#xff0c;我相信既然大家以及看到了这里&#xff0c;就代表大家对Unity有一些兴趣&#xff0c;下面我们介绍以下Unity&#xff1a; Unity3D是由UnityTechnologies开发的一个能让玩家轻松创建…...

nodejs+vue+elementui游戏新闻资讯网站管理系统

系统分为用户和管理员两个角色&#xff1a; 管理员功能&#xff1a; 管理员登录系统后台 资讯标签&#xff0c;管理员对资讯的标签进行添加删除等 游戏资讯管理&#xff0c;管理员对游戏新闻资讯进行添加&#xff0c;修改&…...

资讯网站寻找热门话题若干途径

资讯网站寻找热门话题若干途径 文章目录前言一、从新浪微博中找要素&#xff1f;二、从相关性话题网站上搜索1.关性话题2.其他类型的咨询二、从qq热门话题中寻找总结前言 目前国内有很多资讯网站&#xff0c;比较出名的有雅虎资讯、凤凰资讯、资讯中国等。这些综合资讯门户网站…...

程序员掌握新技术,知晓最新行业资讯的网站合集。

我们作为一个程序员或者想成为程序员来说&#xff0c;程序员的工作和日常生活非常的枯燥&#xff0c;每天面对电脑敲代码&#xff0c;当我们有问题的时候我们想第一时间解决&#xff0c;想学习一门新技术的时候我们可以立马get教程&#xff0c;想了解最新行业资讯的时候&#x…...

双十一成交额给电商从业者带来了哪些思考

双十一销售额给电商从业者带来了哪些思考据T猫公布数据显示&#xff0c;截至11月11日0点45分&#xff0c;已有411个去年成交额过百万的中小品牌&#xff0c;今年销售额突破千万;有40个去年双11成交额千万级的品牌&#xff0c;在今年双11成交额突破了1亿元大关。 从11月1日到11日…...

2020年淘宝天猫双十一成交额突破新高,倍赞网祝商家继续大卖

11月1日0点至11日0点30分&#xff0c;2020年天猫双11全球狂欢季实时成交额突破3723亿。又一个新消费里程碑&#xff01; 天猫双11“亿元俱乐部”成员也在不断增加。11月1日0点至11日0点35分&#xff0c;苹果、欧莱雅、海尔、雅诗兰黛、耐克、华为、美的、兰蔻、小米、阿迪达斯等…...

天猫双十一成交额突破3723亿元

天猫双十一成交额突破3723亿元 峰值1秒成交58.3万笔 今天凌晨刚过&#xff0c;天猫双11传来数据显示&#xff0c;11月1日至11日0点30分&#xff0c;2020年天猫双11全球狂欢季实时成交额突破3723亿。 据了解&#xff0c;今年是天猫双11的第十二年&#xff0c;双11启动较早&am…...

2020天猫双十一成交总额预计达到多少亿呢?

2020年的“双十一”活动已经拉开了序幕&#xff0c;从10月份底开始&#xff0c;天猫双十一就已经进入全面的备战状态&#xff0c;从今天双十一的活动节来看&#xff0c;每天的预售主题各不相同&#xff0c;2020年的购物节让商家和平台变得更加的期待了。在面对经济的冲击后&…...

python根据数量打折输出总额_用Python预测2020年双十一交易额

原标题&#xff1a;用Python预测2020年双十一交易额去年双十一的时候&#xff0c;我曾利用算法预测过阿里巴巴 2019 年双十一交易额&#xff0c;并做了复盘总结(本文结尾处有当时预测和复盘的文章链接)。今年的双十一&#xff0c;规则发生了很大的变化&#xff0c;从 10 月 21 …...

2020双十一活动怎么玩?做好这3点引爆销量!

电商即将迎来每年最大的狂欢——11.11&#xff0c;早在去年&#xff0c;众多知名品牌在大促里纷纷斩获佳绩&#xff0c;甚至 1 天拿下 30 万订单、业绩超过千万。特意整理 11.11 玩法全套攻略&#xff0c;当是学习借鉴也好&#xff0c;查漏补缺也罢&#xff0c;大家尽可看看。了…...

拼多多9小时成交额超去年双11 全国贫困县产生1200万个上行农产品订单,新的商业模式

https://36kr.com/p/5161596.html?fromnext 一线城市还没有养成网络购买农产品的习惯&#xff0c;不过很快就习惯了。 看下面报道 11月12日早间&#xff0c;新电商平台拼多多公布双十一大促最新数据。截至11日上午9点25分&#xff0c;平台GMV超越去年全天。双十一期间&#x…...

迪赛智慧数——折线图(阶梯折线图):历年天猫双十一全网销售额

效果图 2022年“双11”销售额5571亿与去年持平 每年双十一大促活动优惠多多&#xff0c;而且每一次的销量也都在突破新高&#xff0c;因此大家对于历年来双十一大促额度度数据也都比较关心。2021双11成交额是多少?对比往年双十一成交额数据情况怎么样? 数据源&#xff1a;静…...

杨建允:透过2022年双十一GMV,我们看到了什么?

10月31日晚8点&#xff0c;2022年双十一拉开帷幕。近几年&#xff0c;双11已经不再通过大屏公布实时成交额&#xff0c;但是我们仍然可以通过各平台公布的数据获取到很多品牌的销售额。 根据今年双11的首批数据可以得知&#xff1a;阿里&#xff1a;国货品牌在今年双十一的表现…...

2009-2020年天猫“双十一”成交额统计情况

将matplotlib柱状图和折线图进行组合 代码&#xff1a; # -*- coding:utf-8 -*- import matplotlib import matplotlib.pyplot as plt matplotlib.rcParams[font.sans-serif] [SimHei] # 用黑体显示中文 #数据源 x [r2009年, r2010年, r2011年, r2012年,r2013年,r2014年,r…...