方法重写

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. JUnit5注解学习指引

    注解(Annotations)是JUnit的标志性技术,本文就来对它的20个注解,以及元注解和组合注解进行学习. 20个注解 在org.junit.jupiter.api包中定义了这些注解,它们分别是 ...

  2. Unity的AnimationCurve

    转自:风宇冲Unity3D教程学院http://blog.sina.com.cn/s/blog_471132920101f8nv.html,本文有多处增删减改,详细内容请查看原文. 1.介绍 Anim ...

  3. 温故知新,.Net Core遇见Blazor(FluentUI),属于未来的SPA框架

    什么是Blazor Blazor是一个使用.NET生成交互式客户端WebUI的框架: 使用C#代替JavaScript来创建信息丰富的交互式UI. 共享使用.NET编写的服务器端和客户端应用逻辑. 将 ...

  4. php反序列化-unserialize3

    目录 unserialize3-php反序列化 unserialize3 unserialize3-php反序列化 unserialize3 环境地址:https://adworld.xctf.org ...

  5. 48、django工程(model)

    48.1.数据库配置: 1.django默认支持sqlite,mysql, oracle,postgresql数据库: (1)sqlite: django默认使用sqlite的数据库,默认自带sqli ...

  6. CentOS-Docker搭建Nacos-v1.1.4(单点)

    通用属性配置(v1.1.4) name description option MODE cluster模式/standalone模式 cluster/standalone default cluste ...

  7. 64. Minimum Path Sum 动态规划

    description: Given a m x n grid filled with non-negative numbers, find a path from top left to botto ...

  8. postgresql行列转换

    --安装扩展 CREATE EXTENSION tablefunc --使用CROSSTAB函数 SELECT * FROM CROSSTAB('SELECT 主键, 需转换的列名, 需转换的列值 F ...

  9. 题解 guP2421 【[NOI2002]荒岛野人】

    本题珂以转换成一个式子 即求Ci + Pi × x ≡ Cj + Pj × x (mod M) 的最小答案是否大于寿命最小值 以人数为最小值开始枚举山洞数,用扩展欧几里得计算最优答案是否大于寿命 若不 ...

  10. python 14篇 写日志

    import sys from loguru import logger # 日志级别: debug 调试信息打印日志比较详细,级别最低 # info 正常的提示信息,级别较低 # waring 警告 ...