方法重写

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. react 的优点

    1. 声明式开发 react 是声明式的开发方式,与之对应的是命令式开发方式.之前用jquery写代码的时候,我们都是直接操作dom,这种我们称为命令式的编程.命令式编程需要我们一点点的告诉dom,它 ...

  2. 通过jquery创建节点以及节点属性处理

    <!DOCTYPE html><html> <head>    <meta http-equiv="Content-type" conte ...

  3. excel用函数去掉单元格内容中的括号,并只保留单元格里面的内容

    1.substitute(需要执行替换操作的单元格,需要替换的字符,替换后的字符,有多个需要替换的字符可以指定替换的第几个) 例如:aab--substitute("aab",&q ...

  4. Java 创建PDF文件包的2种方法

    1. 概述 PDF文件包可方便在仅打开一个窗口的情况下阅读多个文档,通过将多个PDF文档或其他非PDF文档封装在一起,打开文件包后可以随意切换查看文件包中的文档,在需要编辑更改的情况,也可以打开文本包 ...

  5. C# DataGridView单元格画斜线

    功能要求:不符合条件的单元格使用斜线形式表现出来. 1.定义两个变量,一个是存储单元格位置的数组,一个是Graphics 变量 Graphics gdi; List<DataGridViewCe ...

  6. IDEA详细配置+优秀插件

    目录 IDEA破解 Settings配置 配置 settings 字体 关闭IDEA更新 设置IDEA打开为项目选择界面 自动导入包配置 显示方法的分割线 滚轮设置字体大小 智能提示忽略大小写 Tab ...

  7. 包机制与javaDOC文档

    包机制 包的本质就是个文件夹: 一般利用公司域名倒置作为包名:com.kuangstudy.biog javaDOC文档 package com.kuang.base; /** * @author K ...

  8. CentOS-Docker安装RabbitMQ集群(rabbitmq:3.7.16-management)

    准备工作 1.机器资源(分别安装docker环境) 建议机器配置: centos7.x 4G及以上 100GB及以上 2核及以上 192.168.1.101 192.168.1.102 192.168 ...

  9. 暑假自学java第八天

    1.接口的概念(关键字interface  ) Java程序设计中的接口 ( interface)也是一种规范,用来组织应用程序中的类,并调节它们的相互关系.接口是由常量和抽象方法组成的特殊类,是对抽 ...

  10. java.util.Date 与 java.sql.Date

    java.sql.Date 继承 java.util.Date 区别: 1.java.sql.Date 一般用于数据库 2.java.sql.Date 没有时分秒,涉及时分秒的函数都会报异常(且这些方 ...