方法重写

static :
 ​
 ​
 package oop.demon01.demon05;
 ​
 public class Application {
     public static void main(String[] args) {
 ​
         //方法的调用只和左边,定义的数据类型有关
         A a=new A();
         a.test();//A
 ​
         //父类的引用指向了子类
         B b=new A();
         b.test();//B
         /*
         输出结果:
         A=>test
         B=>test
          */
    }
 }
 ---------------------------
     //A
 package oop.demon01.demon05;
 ​
 //继承
 public class A extends B{
     public static void test(){
         System.out.println("A=>test");
    }
 }
 ​
 ---------------------------
        //B
     package oop.demon01.demon05;
 ​
 // 重写都是方法的重写,与属性无关
 public class B {
 ​
     public static void test(){
         System.out.println("B=>test");
    }
 }
 ​
非静态:
 package oop.demon01.demon05;
 ​
 public class Application {
     public static void main(String[] args) {
 ​
         //静态方法和非静态方法的区别很大!
             //静态方法:   方法的调用只和左边,定义的数据类型有关
         A a=new A();
         a.test();//A
 ​
         //父类的引用指向了子类
         B b=new A();// 子类重写了父类方法
         b.test();//A
         /*
         输出结果:
         A=>test
         A=>test
          */
    }
 }
 --------------------------------
 package oop.demon01.demon05;
 ​
 //继承
 public class A extends B{
 ​
     //Override 重写
     @Override//注解: 有功能的注释!
     public void test() {
         System.out.println("A=>test");
    }
 }
 --------------------------------
 package oop.demon01.demon05;
 ​
 // 重写都是方法的重写,与属性无关
 public class B {
 ​
     public  void test(){
         System.out.println("B=>test");
    }
 }
 ​
方法重写总结
 重写: 需要有继承关系,子类重写父类的方法!
     1. 方法名必须相同
     2. 参数列表必须相同
     3. 修饰符: 范围可以扩大,不可以缩小:   public>Protected>Default>private
     4. 抛出的异常: 范围,可以被缩小,但不能扩大: ClassNotFoundException ---> Exception(大)
     
 重写总结: 子类的方法与父类必须一致; 方法体不同!
 ​
 为什么需要重写:
    1. 父类的功能,子类不一定需要,或者不一定满足
    alt + insert : override

学习内容源自视频:b站狂神说Java

Java面向对象10——方法重写的更多相关文章

  1. Java继承之方法重写

    目录 Java继承之方法重写 代码体现 概念 注意事项 "两同两小一大" 其他注意点 重写与重载 @Override注解 Java继承之方法重写 在Java继承中,子类可以获得父类 ...

  2. 《java入门第一季》之面向对象(方法重写问题)

    方法重载的引入:根据一个案例: /* 继承中成员方法的关系: A:子类中的方法和父类中的方法声明不一样,这个太简单. B:子类中的方法和父类中的方法声明一样,这个该怎么玩呢? 通过子类对象调用方法: ...

  3. 类与接口(五)java多态、方法重写、隐藏

    一.Java多态性 面向对象的三大特性:封装.继承.多态. 多态的类型,分为以下两种: 编译时多态: 指的是 方法重载.编译时多态是在编译时确定调用处选择那个重载方法,所以也叫 静态多态,算不上真正的 ...

  4. 【java开发】方法重写和方法重载概述

    类的继承   父类-子类 关键字 extends 新建一个父类 public class Person {     private String name;          private int ...

  5. Java -- 构造函数 & this & 方法重写和方法重载的区别

    JAVA: 今天总结一下构造方法.关键字.方法重载和方法重写的异同   一.构造方法(构造函数)1.构造方法的作用:一是创建对象时调用构造方法创建对象,二是可以初始化多个属性 [学生类创建一个学生对象 ...

  6. c#基础学习(0702)之面向对象和方法重写概述

    面向对象编程(OOP==>Object-Oriented Programming) OOA:面向对象分析 OOD:面向对象设计 OOAD:面向对象分析与设计 什么是面向对象?一种分析问题的方式( ...

  7. Java中的方法重写

    方法的重载: 在同一个类中,出现多个同名的方法,参数列表不同,与返回值类型,修饰符无关 方法的重写: 子类中出现和父类中一模一样的方法(包括返回值类型,方法名,参数列表) 方法重写的注意事项: 1.重 ...

  8. 10.方法重写Override

    方法重写:Override: 需要有继承关系,子类重写父类的方法! 方法名必须相同 参数列表必须相同 修饰符:范围可以扩大,但不能缩小:public>protected>defalut&g ...

  9. java继承 、方法重写、重写toString方法

    1.Java的继承,关键词Extends package cn.mwf.oo; public class TextExtends { public static void main(String[] ...

随机推荐

  1. Flannel和Calico网络插件对比

    1.Kubernetes通信问题 1.容器间通信:即同一个Pod内多个容器间通信,通常使用loopback来实现. 2.Pod间通信:K8s要求,Pod和Pod之间通信必须使用Pod-IP 直接访问另 ...

  2. 关于Word转Markdown的工具Writage安装及使用

    简介 Writage是为希望开始编写结构良好的文档,没有时间或不想深入了解 Markdown 语法的详细信息,或者更愿意使用 Word 作为文本编辑器的每个人设计的 下载并安装 安装包地址:https ...

  3. Jenkins+SonarQube实现C#代码质量检查

    环境准备 SonarQube 项目创建 jenkins Windows构建节点配置 安装与SonarQube服务端相同版本jdk 安装sonar-scanner 并配置环境变量 安装Visual St ...

  4. DWORD

    C++中使用DWORD不用声明,但是要加头文件Windows.h. DWORD 就是 Double Word, 每个word为2个字节的长度,DWORD 双字即为4个字节,每个字节是8位,共32位. ...

  5. MindSpore模型精度调优实战:如何更快定位精度问题

    摘要:为大家梳理了针对常见精度问题的调试调优指南,将以"MindSpore模型精度调优实战"系列文章的形式分享出来,帮助大家轻松定位精度问题,快速优化模型精度. 本文分享自华为云社 ...

  6. 13.3示例:抽象的Number类

    要点提示:Number类是数值包装类.BigInteger以及BigDecimal的抽象父类.

  7. Linux:Ubuntu银河麒麟防火墙操作

    查看防火墙状态 #防火墙状态 sudo ufw status inactive状态是防火墙 关闭 状态 active状态是防火墙 开启 状态 开启防火墙 #开启防火墙 sudo ufw enable ...

  8. linux 中获取进程和kill进程的几种方法

    ps: ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态.进程是否结束.进程有没有僵尸.哪些进程占用了过多的资源等等. 注意:ps是显示瞬间进程的状态, ...

  9. Java Lambda 表达式你会用吗?

    先看再点赞,给自己一点思考的时间,如果对自己有帮助,微信搜索[程序职场]关注这个执着的职场程序员.我有什么:Java技能,面试经验指导,简历优化,职场规划指导,技能提升方法,讲不完的职场故事,个人成长 ...

  10. ARC 122 简要题解

    ARC 122 简要题解 传送门 A - Many Formulae 考虑对于每个数分别算其贡献. 通过枚举该数前面的符号,借助一个非常简单的 \(\mathrm{DP}\)(\(f_{i,0/1}\ ...