但愿一切好起来44天

方法重载(overLoad)的基本使用

package demo01;/** 对于功能类似的方法来说,因为参数列表不一样,却需要记住那么多不同的方法,太麻烦。** 方法的重载(Overload):多个方法的名称一样,但是参数列表不一样* 好处:只要记住唯一一个方法名称,就可以实现类似的多个功能** 方法重载与下列因素相关:* 1.参数个数不同* 2.参数类型不同*3.参数的多类型顺序不同** 方法的重载与下列因素无关* 1.参数的名称* 2.与方法的返回值无关* */
public class Demo01MethodOverload {public static void main(String[] args) {/*System.out.println(sumTwo(10, 20));System.out.println(sumThree(10, 20, 30));System.out.println(sumFour(1, 2, 3, 4));*/System.out.println(sum(1, 2, 3));System.out.println(sum(2.1, 2.3));}//类型不同public static int sum(int a, int b) {return a + b;}public static int sum(double a, double b) {return (int) (a + b);}//多类型顺序不同public static int sum(int a, double b) {return (int) (a + b);}public static int sum(double a, int b) {return (int) (a + b);}public static int sum(int a, int b, int c) {return a + b + c;}//1.与参数的名称无关/*public static int sum(int x,int y,int z){return x+y+z;}*///2.与方法的返回值无关/*public static double sum(int a, int b, int c) {return a + b + c;}*/public static int sum(int a, int b, int c, int d) {return a + b + c + d;}
}

方法重载的注意事项


练习1-四种不同参数类型的重载

package demo01;
/** 题目要求:* 比较两个数据是否相等* 参数类型分别为两个byte类型,两个short类型,两个int类型,两个long类型* 并在main方法中进行测试* */public class Demo02MethodOverloadSame {public static void main(String[] args) {byte a = 10;byte b = 20;System.out.println(isSame(a, b));System.out.println(isSame((short) 20, (short) 20));System.out.println(isSame(10, 30));System.out.println(isSame((long) 500, (long) 600));}public static boolean isSame(byte a, byte b) {System.out.println("两个byte数据的方法");return a == b;}public static boolean isSame(short a, short b) {System.out.println("两个short数据的方法");return a == b;}public static boolean isSame(int a, int b) {System.out.println("两个int数据的方法");return a == b;}public static boolean isSame(long a, long b) {System.out.println("两个long数据的方法");return a == b;}
}

练习2-判断方法的正确重载

package demo01;public class Demo03OverloadJudge {public static void main(String[] args) {}public static void open() {}//正确重载public static void open(int a) {}//正确重载//static void open(int a,int b) {}//与第15行冲突public static void open(double a,int b) {}//正确重载//public static void open(int a,double b) {}//与下一行冲突public void open(int i,double d){}//与上一行冲突public static void OPEN(){}//代码正确,但名称不一样,不是有效重载public static void open(int i,int j){}//与第10行冲突
}

练习3-实现重载的println方法(按住ctrl键,会发现其重载已经被写好了)

package demo01;
//byte short int long float double char boolean
//String
//在调用输出语句的时候,println方法其实就是进行了多种数据类型的重载形式,按住ctrl键
//print之所以可以放很多种类的数据,是因为在源码中进行了各种重载
public class Demo04OverloadPrint {public static void main(String[] args) {myPrint(100);myPrint("hello");}public static void myPrint(byte num) {System.out.println(num);}public static void myPrint(short num) {System.out.println(num);}public static void myPrint(int num) {System.out.println(num);}public static void myPrint(long num) {System.out.println(num);}public static void myPrint(boolean is) {System.out.println(is);}public static void myPrint(String str) {System.out.println(str);}
}

第九天学习Java的笔记(方法重载)相关推荐

  1. 第四天学习Java的笔记(方法入门,编译器优化)

    第三章 方法入门 方法:就是将一个功能抽取出来,将代码单独定义在一个大括号内,形成一个单独的功能.当我们需要这个功能的时候,就可以去调用,这样即实现了代码的复用性,也解决了代码冗余的现象. Demo1 ...

  2. 零基础快速学习Java技术的方法整理

    在学习java技术这条道路上,有很多都是零基础学员,他们对于java的学习有着很多的不解,不知怎么学习也不知道如何下手,其实Java编程涉及到的知识点还是非常多的,我们需要制定java学习路线图这样才 ...

  3. java 返回值判断_在Java中判断方法重载的条件除了参数外,还可以通过返回值类型判断。_学小易找答案...

    [单选题]若int x;且有下面的程序片断,则输出结果是() . for (x=3; x<6; x++) { printf((x%2) ? "##%d" : "** ...

  4. java 怎么改变值传递_学习Java值传递方法

    学习Java值传递方法-武汉北大青鸟 值传递是在一个函数中,调用另外一个函数,其中含有参数传递的情况.往往值传递就是把数据传递到另外一个函数中进行进一步处理,以更清楚地显示函数的表达意思.在函数调用的 ...

  5. 学习Java的最佳方法

    Java是某些人可能会说很难学习的语言之一,而其他人则认为它与其他语言具有相同的学习曲线. 两种观察都是正确的. 但是,由于Java具有平台无关性,因此在语言方面具有相当大的优势. Java是一种低级 ...

  6. 深入学习Java虚拟机笔记

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.走进Java 1.4.2 HotSpot VM 1.4.4 BEA JRockit/IBM J9 VM 1.6.1 ...

  7. Java中的方法重载定义详解

     方法重载    方法重载的要求: • 在同一个类中,定义了多个同名的方法,但每个方法具有不同的参数类型或参数个数,这些同名的方法,就构成了重载关系 • 简单来说:同一个类中,方法名相同,参数不同 参 ...

  8. 不知道怎么学习Java,这些方法助你成为Offer收割机!

    最近很多读者在问:Java 怎么学习啊?有没有什么学习路线? 我相信这些读者或多或少都有一些 Java 基础,但由于看不到全貌,学了一段时间很容易迷失.所以我在寻思着能不能写一个学习的地图或者路线,让 ...

  9. JAVA中的方法重载(Overloading)和方法重写(Overriding)

    一. 方法重载 方法重载:当同一个类中有两个或两个以上相同命名的方法. 当方法重载时,必须要保证每两个方法之前的方法签名(Signature)是不同的.这意味着这两个方法有着不同数量的参数或者参数的类 ...

最新文章

  1. pod install 失败 Сocoapods trunk URL couldn't be downloaded
  2. python 数组中第k个最大元素
  3. python数据分析工具大全_Python数据分析工具
  4. zzuliOJ 1894: 985的方格难题 【dp】
  5. String or binary data would be truncated
  6. 【openMV】霍夫变换---直线提取
  7. C++socket编程(一):绪论
  8. firefox os 2.0版模拟器QQ初体验
  9. 2017黑色主题 server sql_王智好美,一袭黑色亮片吊带长裙,造型简约大气,时尚优雅...
  10. bzoj 1690: [Usaco2007 Dec]奶牛的旅行(01分数规划--最优比率环)
  11. [笔记一]Essential JavaScript Design Patterns For Beginners
  12. java面试题框架知识点总结
  13. 小米php架构图,小米商城基本框架部分
  14. 阿里云分布式调度系统-伏羲
  15. iTextSharp 显示中文字体
  16. H5 font标签及其属性
  17. 防御windows系统激活工具的后门入侵
  18. tomcat启动异常之信The APR based Apache Tomcat Native library which allows optimal performance in produ
  19. 计算机优秀大学生,[最新]优秀计算机大学生毕业自我鉴定精选
  20. 小白入门python教程自学python

热门文章

  1. bat启动脚本 springboot_奇葩需求:springboot项目注册为windows系统服务并设置开机自启...
  2. 网页上的图片怎么提取出来_如何在网站上提取图片素材
  3. mysql查询时间类型c语言处理_资讯类app用户热度及资讯类型分析-Mysql进行数据预处理...
  4. jenkins 下载插件 一直失败_Jenkins. 安装错误: No such plugin: cloudbees-folder
  5. tomcat java环境变量配置
  6. Codeforces 1276D/1259G Tree Elimination (树形DP)
  7. 多参量最优化matlab,fmincon函数优化多个参数
  8. python map用法_Python中ChainMap的一种实用用法
  9. python列表换行写入_如何使用Python3中的换行符将列表写入文件
  10. 双拼输入法键位图_谈谈小鹤双拼入门(1)