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));
		}
	}

}

發佈了82 篇原創文章 · 獲贊 194 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章