提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、方法的定义
  • 二、方法的调用
  • 三、方法的重载
    • 1,重载的定义
    • 2,方法的重载的规则
    • 3,实现理论
  • 四、命令行传参
  • 五、可变参数
  • 六、递归(能不用递归就不用递归)
      • 递归结构包括两部分:
    • 递归图例: ![在这里插入图片描述](https://img-blog.csdnimg.cn/ec2ef21d768a45cca4630b28b678a26e.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5YiN54uX5LiN5piv54uX,size_20,color_FFFFFF,t_70,g_se,x_16)

前言

提示:这里可以添加本文要记录的大概内容:

关于Java方法的学习
方法命名规范: 首字母小写,采用驼峰命名。
只是学习笔记!


提示:以下是本篇文章正文内容,下面案例可供参考

一、方法的定义

Java的方法类似与其它语言的函数,是一段用来完成特定功能的代码片段
定义方法如下:

    修饰符     返回类型  方法名 (参数类型  参数名)
public static  void     main   (String[] args){...方法体...
}

return 0;可以结束方法

二、方法的调用

调用方法: 对象名.方法名(实参列表)
有返回值时,如下

int larger = max(30, 40)

无返回值时(void),如下

System.out.println("没有返回值")

三、方法的重载

1,重载的定义

重载就是在一个类中,有相同的函数名称,但形参不同的函数。

2,方法的重载的规则

a,方法名称必须相同。
b,参数列表必须不同(个数不同、或类型不同、或参数排列顺序不同等)。
c,方法的返回值类型可以相同也可以不相同。
d,仅仅返回类型不同不足以称为方法的重载

3,实现理论

方法名称相同时,编译器会根据调用方法的参数个数、参数类型等驱逐个匹配,以选择对应的方法,如果匹配失败,则编译器报错。
方法的重载,代码如下

public class Demo01 {//main方法public static void main(String[] args) {double sum = add(5.5,6.3,8.3);System.out.println(sum);}//加法的方法的重载public static int add(int a, int b){return a+b;}public static int add(int a, int b, int c){return a+b+c;}public static double add(double a, double b){return a+b;}public static double add(double a, double b, double c){return a+b+c;}
}

四、命令行传参


五、可变参数

JDK 1.5 开始,Java支持传递同类型参数的可变参数给一个方法。
在方法声明中,在指定参数类型后加一个省略号(…)
一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。
任何普通的参数必须在它之前声明。
代码如下

public class Demo {public static void main(String[] args) {Demo demo = new Demo();demo.test(1,2,3,4,5,4,3,3,4,4,5,4);}public void test(int... i){for (int x:i){System.out.println(x);}}
}

六、递归(能不用递归就不用递归)

递归就是:自己调用自己。

递归结构包括两部分:

递归头: 什么时候不调用自身方法。
递归体: 什么时候需要调用自身方法。
代码如下:

public class Demo02 {public static void main(String[] args) {Demo02 demo = new Demo02();System.out.println(demo.f(6));}public static int f(int n){if (n == 1){return 1;}else{return n*f(n-1);}}
}

递归图例:

【关于Java方法的学习】相关推荐

  1. Java方法 的学习

    //昨天基础语法for循环的一个实例练习补充: //打印三角形 public class Deomo04 {public static void main(String[] args) {System ...

  2. 关于Java方法的学习

    何谓方法 System.out.println()那么它是什么呢? System是一个系统的类,out是System下的一个的一个输出对象 后面的println是一个方法() Java方法是语句的集合 ...

  3. java min 函数的使用方法_【Python】Java程序员学习Python(五)— 函数的定义和使用...

    不想做一个待宰的羔羊!!!!要自己变得强大.... 函数的定义和使用放在最前边还是有原因的,现在语言趋于通用,基本类型基本都是那些,重点还是学习对象的使用方法,而最根本的还是方法的使用,因此优先介绍, ...

  4. Java快速入门学习笔记9 | Java语言中的方法

    有人相爱,有人夜里开车看海,有人却连LeetCode第一题都解不出来!虽然之前系统地学习过java课程,但是到现在一年多没有碰过Java的代码,遇到LeetCode不知是喜是悲,思来想去,然后清空自己 ...

  5. java方法头_java方法学习

    java方法学习 方法概念 什么是方法 方法就是完成某些事情的过程,如:实现两个数相加,用方法add(数值1,数值2). 1.System.out.print(),System是系统的一个类,out是 ...

  6. Java—String类的intern方法的学习

    对intern方法的学习来源于之前偶然看到的一篇博客:[请别再拿"String s = new String("xyz");创建了多少个String实例"来面试 ...

  7. java/android 设计模式学习笔记(3)---工厂方法模式

    这篇来介绍一下工厂方法模式(Factory Method Pattern),在实际开发过程中我们都习惯于直接使用 new 关键字用来创建一个对象,可是有时候对象的创造需要一系列的步骤:你可能需要计算或 ...

  8. Java基础学习总结(127)——Java方法应该返回空对象还是null

    Java方法应该返回空对象还是null? 大多数情况下就是在需要返回值的方法中,使用空对象(empty object)来代替返回null.理由很简单,空对象与其他有意义的对象一样,使得调用方法的用户不 ...

  9. Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter

    Java IO流学习总结四:缓冲流-BufferedReader.BufferedWriter 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/det ...

最新文章

  1. 转载,大佬关于虚拟内存与物理内存关系讲解。
  2. 练习7-11 字符串逆序 (15 分)
  3. OKR案例分析,哪种类型的企业适合OKR?
  4. 浅谈Redis及其安装配置
  5. 人类语言的表现形式和规则
  6. sql经验 convert函数转换日期
  7. mysql查询职位大于3_4、MySQL查询(控制行)
  8. Android BLE学习(一): Android搜索BLE设备
  9. 第四讲 数学公理化方法(上)
  10. mysql不支持innodb存储引擎
  11. STM32学习——中断方式下的发送数据
  12. 多线程编程学习笔记——线程池(二)
  13. iis7.5+.net4.5 报404错误
  14. matlab 发微信,微信红包算法MATLAB实现
  15. thinkphp5项目--企业单车网站(二)
  16. 实现带有拉普拉斯修正的朴素贝叶斯_数据科学 | 算法工程师必备的机器学习贝叶斯分类器...
  17. 算法回顾序(学习方法,第一个程序,《程序设计导引及在线实践》习题,移位运算)
  18. 图像批处理高斯滤波降噪+峰值信噪比计算
  19. html5自动换行,html5文字自动换行怎么设置
  20. 基于腾讯轻量服务器安装Aria2+AriaNg+Nginx+File Brower 服务

热门文章

  1. 2023最新苹果CMS10魔加主题1.1.6去授权版+支持全部版本
  2. 大家都在努力,你凭什么不努力?
  3. 第十一课 for循环(3)---循环变量的变化
  4. 并发编程入门(五):Java并发包和Java8并发
  5. 【调剂】中国舰船研究院本部(北京)2023年硕士研究生调剂招生简章
  6. Mac远程控制Mac和Windows
  7. java/php/net/python守望先锋网站设计
  8. 从小程序到小程序云开发
  9. ttyS 和 ttyO 的区别
  10. linux下创建用户分组及设置分组权限