• 重载&重写


    JAVA基础 OOP 重载&重写

    第一节 JAVA基础 OOP 重写与重载



    前言

    Java基础学习,加固,回头看,温故而知新。


    一、重载&重写

    ·重 载重 写对应类
    ·重载是同一个类内,方法名称相同,而参数不同的方法实现子类对父类非私有方法的重新实现ReloadOrOverride
    ·重载方法入参不能相同重写的子类方法必须与父类相同方法例:partOne
    ·\子类重写的方法返回值类型不能大于父类方法例:partTwo
    ·\子类重写的访问权限修饰符不能小于父类的方法 private>default>protected>public方法例:partTwo,父类为default,子类只能为 ‘defalut>protected>public’ 这三种修饰这
    ·\子类重写的方法抛出的异常类型不能大于父类方法例:partFore

    二、使用步骤

    代码如下(注解不规范,请勿效仿):

    // 父类方法
    public class ReloadOrOverrideParent {
    		
        protected void partOne() {
            System.out.println(1);
        }
    
        Object partTwo() {
            System.out.println(1);
            return new Object();
        }
    
        private void partThree() {
            System.out.println("private");
        }
        
        public void partFore() throws RuntimeException {
    
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    public class ReloadOrOverride extends ReloadOrOverrideParent {
    
        // 这是重写
        @Override
        public void partOne() {
            System.out.println(2);
        }
        
    	// 这是重写
        @Override
        public String partTwo() {
            return (String) super.partTwo();
        }
    
        // 不能重写父类的私有方法
    //    @Override
    //    public void partThree() {
    //
    //    }
    
    	//@Override
      //  public void partFore() throws Exception { // 这是错误的 不能thorws Exception
      //      super.partFore();
      //  }
        // AccessControlException 是 RuntimeException 子类就可以
        @Override
        public void partFore() throws AccessControlException {
            super.partFore();
        }
      
    
        // 重载
        public void partOne(String s) {
            System.out.println(s);
        }
    
        // 重载
        public String partOne(String s,String s2) {
            System.out.println(s2);
            return s2;
        }
    
        public static void main(String[] args) {
            ReloadOrOverride o = new ReloadOrOverride();
            o.partOne("s", "2");
        }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47

    总结

    对于Java使用中,重载和重写是经常用的特征方式。恰到好处的使用可以让自己的代码构成十分灵活以及提高自己的设计思路。

    感谢观看。

                ★  ★  ★  ★                      ★  ★  ★  ★  ★                      ★  ★  ★  ★  ★                     ★               ★
              ★             ★                       ★                ★                      ★                                         ★           ★
             ★            ★                         ★                ★                      ★                                         ★       ★
            ★  ★  ★  ★                          ★                ★                      ★                                         ★   ★
           ★       ★                                ★                 ★                      ★                                         ★       ★
          ★           ★                             ★                 ★                      ★                                         ★           ★
         ★               ★                          ★  ★  ★  ★  ★                      ★  ★  ★  ★  ★                     ★               ★

  • 相关阅读:
    十年老Python程序员:给我一个链接,没有我不能爬的视频,只有我顶不住的视频
    分布式事务
    在ubuntu20.04下学习shell
    细说React组件性能优化
    git的基本使用
    6.DesignForPlacement\ALIGN_SYM...
    0109连续函数的运算和初等函数的连续性-函数与极限-高等数学
    递归代码和动态规划代码相互转化
    从零点五开始的深度学习笔记——VAE(Variational AutoEncoder) (一) 预备知识
    算法|每日一题|最长平衡子字符串|计数
  • 原文地址:https://blog.csdn.net/son_of_a__bitch/article/details/127899641