zoukankan      html  css  js  c++  java
  • Java中重写与重载的辨析

    摘要:在我们学习Java过程中,重写与重载使我们在面向对象里要学习的重要知识点之一,那我们看看它们有那些区别:

     一.重写

      1.概念:简单的说就是子类将从父类继承而来的方法重新实现一次。

      2.特点:

      ①方法名必须与父类对的保持一致

      ②参数列表必须保持一致,

      ③返回类型必须一致,

      ④访问修饰符的可访问范围要大于等于父类,

      ⑤子类重写后的方法不能抛出比父类重写前范围更大的异常。

    二.重载

     1.概念:简单的说是在同一个类中,拥有多个同名方法,参数列表不同各有各的实现相互不影响。

     2特点:

      ①具有不同的参数列表,

      ②参数列表内的参数相同时,参数的顺序必须不同,

      ③可以有不同的访问修饰符,

      ④可以抛出不同的异常,

      ⑤可以有不同的返回类型,

     例:

    package com.lovo.thissuper;
    //父类
    public class SuperClass {
    	
    	public void super(){
    		System.out.println("父类方法1");
    	}
    	
    	public void super(int a){
    		System.out.println("父类的方法2");
    	}
    	
    	public void super(int a, int b){
    		System.out.println("父类的方法3");
    	}
    }
    

      

    public class SubClass extends SuperClass{	
    //子类	
    	public void super(){
    		System.out.println("子类的方法1");
    	}
    	
    	public void super(int a){
    		System.out.println("子类的方法2");
    	}
    	//方法用final修饰就表示该方法不能被重写
    	public void super(int a, int b){
    		System.out.println("子类的方法3");
    	}		
    }
    

      终结:重载如例子中父类和子类中的三个方法,就是重载的不同参数列表的重载方法的一种体现,而父类里的三个方法与子类里的三个分别对应,而形成了重写的的体现,从这里我们可以有一个很明显的区别,重写是在两个类中的,而重载是在一个类里出现;另外补充一个知识点,就是在父类中如上例子中,将父类再加上final来修饰的话,子类只能继承,但是不能重写父类的这个方法。

  • 相关阅读:
    Tomcat 参数调优
    weBDrriver API接口方法小记
    cookie、session、sessionid 与jsessionid
    性能测试知多少---性能需求分析
    nvl()与regexp_replace()
    Action类的工作机制
    创建视图组件
    struts 与 Java Web应用简介
    java入门2
    java入门1
  • 原文地址:https://www.cnblogs.com/qq1083735206/p/6160200.html
Copyright © 2011-2022 走看看