2019.9.23JAVA动手动脑

1请看以下代码,你发现了有什么特殊之处吗?

// MethodOverload.java
// Using overloaded methods
public class MethodOverload {
 public static void main(String[] args) {
  System.out.println("The square of integer 7 is " + square(7));
  System.out.println("\nThe square of double 7.5 is " + square(7.5));
 }
 public static int square(int x) {
  return x * x;
 }
 public static double square(double y) {
  return y * y;
 }
}
 发现:方法重载的定义是方法名相同但是参数顺序,个数,类型三者之一最少有一个不同,两个参数为例当顺序不同的时候必须是int double  重载之后是double int,但是int int,或者double double交换顺序是不重载的,返回值类型不同不会被认为方法的重载,因为例如上面代码,方法调用的时候是不会有返回值类型的,所以如果其他都一样,只是返回值类型不同,则计算机不会明白要调用哪个,所以返回值类型不同不会被认定为重载。
 
 
 
 
 
2练习:
  查看一下JDK中System.out.println()方法,你发现了什么?
发现System.out.println()中对各种内容的输出实际上就是对System.out.println()方法的重载。
 
 
 
 

猜你喜欢

转载自www.cnblogs.com/tkg1314/p/11583373.html