課題(メソッドのオーバロードその2)

public class Test {

    public static void main(String[] args) throws Exception {
    	System.out.println(add(10.0,20.0));
    	System.out.println(add("10.0","20"));
    	System.out.println(add(10,20));
    	System.out.println(add(10,20.0));
    	System.out.println(add(10.0,20));
    	System.out.println(add("10","20"));
    	
    }
    
    public static int add(int args1, int args2) {
    	System.out.println("int型");
    	int result = args1 + args2;
    	return result;
    }
    
    public static double add(double args1, double args2) {
    	System.out.println("double型");
    	double result = args1 + args2;
    	return result;
    }
    
    public static double add(String args1, String args2) {
    	System.out.println("String型");
    	double temp1 = Double.parseDouble(args1);
    	double temp2 = Double.parseDouble(args2);
    	double result = temp1 + temp2;
    	return result;
    }

}