方法重写

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. kubelet分析-csi driver注册分析-Node Driver Registrar源码分析

    kubernetes ceph-csi分析目录导航 Node Driver Registrar分析 node-driver-registrar是一个sidecar容器,通过Kubelet的插件注册机制 ...

  2. Redis计数信号量

    计数信号量是一种锁,它可以让用户限制一项资源最多能够同时被多少个进程访问,通常用于限定能够同时使用的资源数量.你可以把Redis分布式锁里面创建的锁看作是只能被一个进程访问的信号量. 计数信号量和其他 ...

  3. 28、windows下通过MSI图形界面方式安装mysql

    28.1.下载mysql: 1. www.mysql.com 2. 3. https://dev.mysql.com/downloads/mysql/ 4. 5. 28.2.安装: 双击下载的&quo ...

  4. Machine Schedule 赤裸裸的二分匹配 二部图中的点覆盖书==匹配数

    Machine Schedule 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 ...

  5. 选择适合小企业的CRM软件

    随着信息时代的到来和客户掌握的信息变多,大多数企业开始从"以产品为中心"转变为"以客户为中心".为了适应市场的变化,许多企业开始使用客户关系管理软件来提高工作效 ...

  6. My Idol:Beihai Zhang --<<The Three-body Problem>>

    First 父:"要多想." 子:"想了之后呢?" 父:"北海,我只能告诉你在那以前要多想." 要多想--这场战争敌我力量对比过于悬殊,硬碰 ...

  7. css边框样式(动画)

    html: <div class="wrap"> <a href="#">shui</a> </div> css ...

  8. 教你写百分九十的shell

    本文章主要内容来自菜鸟教程 , 也添加了一些知识点 shell脚本? 在说什么是shell脚本之前,先说说什么是shell.shell是外壳的意思,就是操作系统的外壳.我们可以通过shell命令来操作 ...

  9. Tomcat:tomcat部署war包配置SSL访问

    Linux-CentOS7部署 war放置 war放到tomcat的webapps目录内 修改配置 修改tomcat的server.xml文件 HTTP: 找到Connector元素,修改端口 HTT ...

  10. 『与善仁』Appium基础 — 2、常用Android模拟器的安装

    目录 1.Android Virtual Devices模拟器 2.Genymotion模拟器 (1)Genymotion模拟器下载 (2)模拟器Genymotion安装 (3)Genymotion模 ...