1.方法重写的介绍

当子父类中,某方法存在相同的定义(方法名、参数、返回值)时,子类的方法会将父类的方法进行重写操作(覆盖)

2.方法重写与方法重载的区别

1.方法重载:又称Overload,在同一个类中,方法名相同,参数不同,与返回值无关。其中,参数不同分别为参数类型、参数数量、参数顺序不同

2.方法重写:又称Override,在子父类中,方法的定义一样,其中,定义相同分别为方法名、参数、返回值相同

2.判断方法重写--注解

注解在后面会详细介绍,今天我们只需要知道注解该如何使用。

注解可以帮助我们判断方法重载和方法重写,使用格式:@....

如图

如果该方法是方法重写,注解就不会报错,否则,报错



如图

上图中,子类与父类的method属于方法重载。子类继承了父类,那么子类中就相当于有了一个method(),而子类中有一个同方法名,但参数不同的method(),那这不就是方法重载嘛 如图,如果是方法重写的话,就不应该打印两句话





3.方法重写的使用场景

1.方法重写的使用:

第一种使用方法---直接写出父类中要重写的方法名

比如,父类中有个谈恋爱的方法,子类继承到了,但觉得不太好,需要修改,这时直接写出方法名即会有提示



修改后的love方法



第二种使用方法

系统帮我们生成



3.方法重写的注意事项

1.父类被私有化的方法都无法被继承,更不用说重写

2.子类在重写父类的方法时,权限必须大于等于父类,其实权限说的就是权限修饰符 如图

方法重写-java se 进阶-day01的更多相关文章

  1. 【Java SE进阶】Day03 数据结构、List、Set、Collections

    一.数据结构 1.红黑树 根黑子黑红子黑 接近平衡树(左右孩子数量相同),查询叶子快慢次数不超过2倍 二.List 1.概述 元素有序 线性存储 带有索引 可以重复 2.常用方法 增:add(I,E) ...

  2. 【Java SE进阶】Day12 函数式接口、函数式编程(Lambda表达式)

    一.函数式接口介绍 1.概念 仅有一个抽象方法的接口 适用于函数式编程(Lambda使用的接口) 语法糖:方便但原理不变,如for-each是Iterator的语法糖 Lambda≈匿名内部类的语法糖 ...

  3. 【Java SE进阶】Day01 Object类、日期时间类、System类、StringBuilder类、包装类

    一.Object类 1.概述:Java语言的根类/超类,默认继承自Object类 2.常用方法 toString():返回对象的字符串表示--对象类型@内存地址值 可以对其重写@Override eq ...

  4. 【Java SE进阶】Day13 Stream流、方法引用

    〇.总结 Stream流的方法:forEach.filter.map.count.limit.skip.concat(结合之前的Collectors接口) 方法引用:Lambda的其他类方法体相同,如 ...

  5. 【Java SE进阶】Day08 File类、递归

    一.File类 1.概述java.io.File 文件和路径的抽象表示 用于文件和目录的创建.查找和删除等 分类 file--文件 directory--文件夹/目录 path--路径 2.静态成员变 ...

  6. 【Java SE进阶】Day07 等待与唤醒案例、线程池、Lamdba表达式

    一.等待唤醒机制 1.线程间通信 多个线程处理同一个资源,就存在线程通信问题(线程间存在竞争与协作机制) 为什么处理:为了 保证多个线程有规律地完成同一任务 如何处理:避免对共享变量争夺,需要等待唤醒 ...

  7. 【Java SE】Day01 前言、入门程序、常量、变量

    回顾一下Java之前学的内容 Day01 前言.入门程序.常量.变量 一.基础知识 莱布尼茨发明二进制,辗转相除与8421位权法互转,1B=1bit=1字节=8位=8byte dos cls清屏dir ...

  8. 【Java SE进阶】Day09 字节流、字符流、I/O操作、属性集

    一.I/O概述 1.输入输出 输入:硬盘-->内存 输出:内存-->内存 2.流 字节流:一个字节等于8位 字符流:一个字符=2个字节 二.字节流 1.概述 以字节的方式读取/传输 可以读 ...

  9. 【Java SE进阶】Day06 线程、同步

    一.线程 1.多线程原理 流程图 内存图解说明 创建线程的方式 继承Thread类 实现 Runnable接口 2.继承Thead类 3.实现Runnable接口 实现接口,重写run方法 最终均需要 ...

  10. 【Java SE进阶】Day05 异常,线程

    一.异常 1.概念 程序执行过程中,出现非正常情况导致JVM的非正常停止 本身是一个类,产生异常即创建并抛出一个异常对象 Java处理异常的方式是进行中断处理 异常非语法错误,语法错误直接不会产生cl ...

随机推荐

  1. 分析基于ASP.NET Core Kernel的gRPC服务在不同.NET版本的不同部署方式的不同线程池下的性能表现

    分析基于ASP.NET Core Kernel的gRPC服务在不同.NET版本的不同部署方式的不同线程池下的性能表现 使用默认的 gRPC 项目模板创建,垃圾回收器类型为 ServerGC(Serve ...

  2. G1原理—3.G1是如何提升垃圾回收效率

    大纲 1.G1为了提升GC的效率设计了哪些核心机制 2.G1中的记忆集是什么 3.G1中的位图和卡表 4.记忆集和卡表有什么关系 5.RSet记忆集是怎么更新的 6.DCQ机制的底层原理是怎样的 7. ...

  3. linux:shell

    关于shell 什么是shell? shell,是用c编写的,既是命令语言,也是一种程序设计语言 shell指一种应用程序,该程序提供一个界面,用户可通过该界面访问操作系统 什么是脚本? 脚本是一条文 ...

  4. 面向对象(下)的阶段性复习:关键字abstract、模板方法的设计模式、关键字interface、代理模式、工厂的设计模式、类的结构内部类

    关键字:abstract abstract: 抽象的1.可以用来修饰:类.方法2.具体的:abstract修饰类:抽象类 * > 此类不能实例化 * > 抽象类中一定有构造器,便于子类实例 ...

  5. react给当前元素添加一个类以及key的作用

    给当前元素添加一个类是通过className来处理的: 引入css;直接from XXXX import React, { Component } from "react"; // ...

  6. 线性空间与线性基(待整修,现在是史,OIwiki上的史。)

    各代数结构定义 群 对于一个集合 \(G\) 和运算 \(\times\),若其满足:封闭性.结合律,具有单位元,对于每个元素都有逆元,则称呼 \((G,\times)\) 为一个群. 阿贝尔群,或交 ...

  7. RabbitMQ(一)——简介

    RabbitMQ系列 RabbitMQ(一)--简介 RabbitMQ(二)--模式类型 RabbitMQ(三)--简单模式 RabbitMQ(四)--工作队列模式 RabbitMQ(五)--发布订阅 ...

  8. C# 获取计算机唯一标识

    C# 获取计算机唯一标识 原文链接 private static string _sFingerPrint { get; set; } /// <summary> /// 计算机唯一标识 ...

  9. TensorFlow 的基本概念和使用场景

    TensorFlow是一个开源的机器学习框架,由Google开发并维护.它提供了一个灵活的编程环境,用于构建和训练各种机器学习模型.TensorFlow是基于图计算的模型,其中节点表示数学操作,而边表 ...

  10. Kubernetes - [04] 常用命令

    kubectl 语法 kubectl [command] [TYPE] [NAME] [flags] command:指定在一个或多个资源商要执行的操作.例如:create.get.describe. ...