Notes: Java的方法重载机制和良好的编程习惯
2016-07-28 01:00
323 查看
方法重载的机制是通过方法名相同,但形参不同的方式。所有方法都要求拥有独一无二的参数类型列表。
其实参数的顺序也可以区分方法,但是良好的编程习惯告诉我们不能那么做,否则代码很难读懂和维护。
1) 重载中的基本类型(primitive)向上转型机制:
基本类型能从一个“较小”的类型自动提升至一个“较大”的类型。首先我们得了解,基本类型从小到大的顺序:
byte < short(短整型) < int (整形) < long (长整形) < float < double
char < int < long ...
所以,当一个函数的重载版本中没有int的形参,但调用时赋予了int参数,则会自动向上寻找匹配的重载版本:long/ float / double ...
2) 使用可变参数列表的重载函数原则:
只在一个版本的重载函数中使用可变参数,或者干脆不用。
否则,如果直接调用"f()",编译器无法知道应该调用哪个方法。
其实参数的顺序也可以区分方法,但是良好的编程习惯告诉我们不能那么做,否则代码很难读懂和维护。
1) 重载中的基本类型(primitive)向上转型机制:
基本类型能从一个“较小”的类型自动提升至一个“较大”的类型。首先我们得了解,基本类型从小到大的顺序:
byte < short(短整型) < int (整形) < long (长整形) < float < double
char < int < long ...
所以,当一个函数的重载版本中没有int的形参,但调用时赋予了int参数,则会自动向上寻找匹配的重载版本:long/ float / double ...
2) 使用可变参数列表的重载函数原则:
只在一个版本的重载函数中使用可变参数,或者干脆不用。
否则,如果直接调用"f()",编译器无法知道应该调用哪个方法。
相关文章推荐
- Notes: Java的方法重载机制和良好的编程习惯
- Notes: Java的方法重载机制和良好的编程习惯
- Notes: Java的方法重载机制和良好的编程习惯
- 二叉排序树(Java)
- java代理模式和动态代理
- 安卓中的延时启动 与 JAVA中的计时器/定时器类
- 二、java中的基本数据类型
- Java接受键盘输入
- Java源码-简单的绘图板
- IllegalStateException异常处理
- java中为什么byte的取值范围是-128到+127
- 启动eclipse报错 Could not create the Java Virtual Machine
- JVM的栈上分配与逃逸分析(Escape Analysis)
- Java内存区域与异常
- java之位运算基础
- Java的I/O流
- Java中clone的用法
- Android基础:Eclipse关联V4包源码
- Java同步块(synchronized block)使用详解
- Java 消亡了?不!原因在这…