欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

方法的重载和重写

程序员文章站 2022-10-03 19:44:12
方法的重载在同一个类中,方法名相同,方法的参数列表不同(参数位置、参数类型、参数个数),与返回值类型无关 //求两个数的最大值public static int max(int a,int b){ if(a>b){ System.out.println(a); }else{ System.out.println(b); }} //求三个数的最大值public static int max(int a,int b,int c...

方法的重载
在同一个类中,方法名相同,方法的参数列表不同(参数位置、参数类型、参数个数),与返回值类型无关

    //求两个数的最大值
public static int max(int a,int b){
    if(a>b){
       System.out.println(a);
   }else{
       System.out.println(b);
     }
}
     //求三个数的最大值

public static int max(int a,int b,int c){
    if(a>b){
    	if(x>z){
            System.out.println(a);
        }else{
            System.out.println(c);
        }
    }else{
        if(b>c){
            System.out.println(b);
        }else{
            System.out.println(c);
        }
    }

   } 


public static void main(String[] args){
    int x = 5;
    int y = 6;
    int z = 7;
    max(x,y,z);
}

//求较大值(两个数)
public static void max(int x,int y){
    System.out.println("-----------");
    if(x>y){
        System.out.println(x);
    }else{
        System.out.println(y);
    }
}
//类型不同
public static void max(byte a,int b){
    if(a>b){
        System.out.println(a);
    }else{
        System.out.println(b);
    }
}

/*public static int max(int a,byte b){
		if(a>b){
			System.out.println(a);
		}else{
			 System.out.println(b);
		}
		return 0;
	}*/
//位置不同
public static void max(int a,byte b){
    if(a>b){
        System.out.println(a);
    }else{
        System.out.println(b);
    }
}
//个数不同
//三个数较大值
public static void max(int x,int y,int z){
    if(x>y){
        if(x>z){
            System.out.println(x);
        }else{
            System.out.println(z);
        }
    }else{
        if(y>z){
            System.out.println(y);
        }else{
            System.out.println(z);
        }
    }
}

方法的重写
在不同类中,方法名相同,参数列表相同(参数类型、参数位置、参数数量),返回值类型一致,并且子类的权限修饰符要大于父类的权限修饰符

abstract 抽象的

//定义一个抽象类  CatKinds
public abstract class DogKinds {

	//定义抽象方法 eat
	public abstract void eat() ;
	
	public void LookDoor() {
		System.out.println("看门");
	}
}

public class Dog extends CatKinds{
    //子类重写父类方法
	@Override   //
	public void eat() {
		System.out.println("吃东西");
	}

	public void LookDoor() {
		System.out.println("看门");
	}
}

本文地址:https://blog.csdn.net/qq_51148472/article/details/109634380