java方法重载--参数类型转换
2016-08-31 09:52
399 查看
package com.xiuye.test; import java.io.Serializable; public class TestOverload { static abstract class A { } static class B extends A { } static class C extends A { } public void f(A a) { System.out.println("AAAAAAA"); } public void f(B a) { System.out.println("BBBBBBB"); } public void f(C a) { System.out.println("CCCCCCC"); } public static void main(String[] args) { TestOverload l = new TestOverload(); // l.f(new A()); l.f(new B()); l.f(new C()); say('a'); } /** * 依次注释1~9, say('a')会依次向上转型输出, * char->int->long->float->double->Character->Serializable->Object->char... * * @param obj */ // 8 public static void say(Object obj) { System.out.println("Object"); } // 1 public static void say(char obj) { System.out.println("char"); } // 2 public static void say(int obj) { System.out.println("int"); } // 3 public static void say(long obj) { System.out.println("long"); } // 4 public static void say(float obj) { System.out.println("float"); } // 5 public static void say(double obj) { System.out.println("double"); } // 6 public static void say(Character obj) { System.out.println("Character"); } // 7 public static void say(Serializable obj) { System.out.println("Serializable"); } // 9 public static void say(char... obj) { System.out.println("char..."); } }
BBBBBBB CCCCCCC char
相关文章推荐
- java :引用类型的转换  方法重载和重写  构造函数 修饰符
- Java中的方法重载的参数是以静态类型为依据
- Javaweb中封装servlet对post参数的各种类型转换方法
- Java 小细节——方法基本类型参数的重载
- Java方法重载时参数类型有重合,它会选择执行哪一个?
- C#方法参数个数和类型相同,名称不同,可以实现重载吗
- Java可变参数方法重载时要注意的几个问题
- 类型的设计--方法:构造器、操作符、转换操作符和参数
- 类型的设计--方法:构造器、操作符、转换操作符和参数
- Java的数据类型转换方法
- C#调用VC DLL接口函数参数类型转换的方法
- 引用 error C2665: “AfxMessageBox”: 2 个重载中没有一个可以转换所有参数类型
- C#只能靠参数而不能靠返回值类型的不同来区分方法重载
- 常见Java 中数据类型之间的转换的方法!
- 提高Java代码重用性方法 措施二:把参数类型改成接口
- java中日期字串类型转换为日期类型的方法
- C#方法重载-基于不同类型的参数的方法重载
- Java中几种常用数据类型之间转换的方法
- 让BeanUtils的copyProperty方法支持String与java.util.Date的类型转换
- 提高Java代码重用性方法 措施二:把参数类型改成接口