Java实训之重载

package chongzai;

public class Demo2 {
/*
 * 对于类似相加的操作,因参数列表不同,所以我定义了许多方法名
 * 问题:
 * 1.太麻烦
 * 2.如果方法名过多,有可能出现调用错误的情况
 * 
 * 解决方式:
 * 使用方法重载,只需记住一个方法名即可
 * 参数的个数不同,方法重载与方法的参数名无关,看的是参数类型,且参数类型的顺序不同亦为重载
 * 即:
 * 1.参数个数
 * 2.参数类型
 * 3.参数类型顺序
 * 与方法的返回类型无关
 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println(sum(1,2));
		System.out.println(sum(1,2,3));
	}
	//方法重载:方法名相同,但参数列表不同
	public static int sum(int a,int b) {
		return a+b;
	}
	public static int sum(int a,int b,int c) {
		return a+b+c;
	}
	public static int sum(double a,int b) {
		return b;
		
	}
	public static int sum(int a,double b) {//参数类型不相同时位置不同,以为重载
		return a;
		
	}

}

java实现计算器

package chongzai;

public class Demo3 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println(calculate(10));
		System.out.println(calculate(10,10));
		System.out.println(calculate("你好"));
		System.out.println(max(9,7,1));
		
	}
public static	int calculate(int a) {
		return a*a;
	}
public static	int  calculate(int a,int b) {
		return a*b;
	}
public static   String calculate(String a) {
	return a;
}
public static int max(int a,int b) {
	return a>b?a:b;
}
public static double max(double a,double b) {
	return a>b?a:b;
}
public static double max(double a,double b,double c) {
	return (a>b?a:b)>c?(a>b?a:b):c;
}
public static double calculate(double a,double b,String c) {
	switch(c) {
		case "+":
			return a+b;
		case "-":
			return a-b;
		case "*":
			return a*b;
		case "/":
			return a/b;
		default:
			System.out.println("输入错误!"); 
	}
	return 0.0;
		
}

}

package chongzai;

public class Demo4 {
/*
 * 汽车图纸包含两部分
 * 属性:颜色 品牌 价格 
 * 行为 跑
 * 对应到类里也是两部分
 * 成员变量(属性):直接在类里定义
 * 成员方法 (行为):把static去掉就是成员方法
 * 一个类通常情况下不能直接使用
 * 要想使用则需要根据类去创建一个真正的对象去使用
 * 如何创建一个类的对象
 * 类名   对象名=new 类名();
 *若系统未赋值,会有默认值
 *类不占内存,是抽象的,而对象是创建出来的,是占内存的
 *类是对象的描述,对象是类的实例
 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Car car=new Car("红色","宝马",120000,5,2);
		car.run();
		Car car1=new Car();
		System.out.println(car1.color);
		car1.run();
		//创建Dog  属性
	}

}

java输入成绩判断学生等级Switch

package chongzai;

import java.util.Scanner;

public class grade {
	public static String com(int score,int max) {
		if(score>=max-10)
			return "A";
		else if(score>=max-20)
			return "B";
		else if(score>=max-30)
			return "C";
		else 
			return "D";
	}
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("输入学生人数:");
		Scanner sc=new Scanner(System.in);
		int num=sc.nextInt();
		int max=0;
		int[] student=new int[num];
		for(int i=0;i<num;i++) {
			System.out.println("输入第"+(i+1)+"学生成绩:");
			student[i]=sc.nextInt();
			if(max<student[i])
				max=student[i];
		}
		String a="";
		for(int i=0;i<num;i++) {
			System.out.println("第"+(i+1)+"个学生成绩等级为"+com(student[i],max));
		}
	}

}

发布了58 篇原创文章 · 获赞 145 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/pengxiang1998/article/details/103908762