zoukankan      html  css  js  c++  java
  • 【Java】重载(Overload)与重写(Override)

    方法的语法

    修饰符 返回值类型 方法名(参数类型 参数名){
        ...
        方法体
        ...
        return 返回值;
    }

    重载(overload)

    /**
     * 重载Overload:
     * 同一个类中,多个方法拥有相同的名字,但参数类型以及参数数量必须不一样。
     * 返回值可相同也可不相同,但单凭返回值不可用来判断方法之间是否存在。
     */
    public class example {
    	public void print() {};
    	//public String print() {}; 参数类型与上一条方法一样,返回值不同,无法通过编译
    	public void print(int a) {};
    	public void print(String a) {};
    }
    

     重写Override

    /**
     * 1. 重写方法只能存在于父子类间,父子类间的这个方法的参数列表、返回类型必须完全相同
     * 2. 重写的方法中,子类的权限修饰符必须>=父类的
     * 3. 父类的方法为private时,子类出现同名方法不属于方法的改写,只是在子类内部重新定义的一个方法
     * 4. 重写方法中,子类抛出的异常需要小于等于父类抛出的异常
     *
     */
    class animal{
    	int num;
    	public void eat() {
    		System.out.println("fruits");
    	};
    	private void run() {
    		System.out.println("run");
    	}
    	public void count() throws IOException {}
    }
    
    class lion extends animal{
    	public void eat() {//属于改写
    		System.out.println("meat");
    	}
    	public void run() {//不属于改写
    		System.out.println("jump");
    	}
    	//public void count() throws ClassNotFoundException {}; 不能抛出父类方法中没有的异常
    	public void count() throws IOException {} //子类抛出的异常可与父类相同的异常或子异常
    }
    

     参考:

    https://www.cnblogs.com/jenkinschan/p/5847470.html

  • 相关阅读:
    java设计模式----迭代器模式和组合模式
    Redis实现消息的发布/订阅
    java设计模式----模板方法模式
    java设计模式----适配器模式
    Filter注入对象
    java设计模式----命令模式
    css3中animation的应用
    bootstrap的学习注意点
    关于animate的一些属性
    ie的兼容方法,条件注释的方法
  • 原文地址:https://www.cnblogs.com/tubybassoon/p/9559704.html
Copyright © 2011-2022 走看看