学习笔记,仅供参考


文章目录

  • JAVA基础语法
    • 方法概述
    • 方法重载

JAVA基础语法

方法概述

  • 为什么要有方法

为了提高代码的复用性

  • 什么是方法

完成特定功能的代码块。

  • 方法的格式
修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {方法体语句;return 返回值; }

修饰符:目前就用 public static

返回值类型:就是返回结果的数据类型,如果不需要任何返回值,可以写void

方法名:符合命名规则即可,方法名最好能描述方法的功能,方便我们调用。

参数:实际参数,就是实际参与运算的;形式参数,就是方法定义上的,用于接收实际参数。

参数类型:就是参数的数据类型。

参数名:就是变量名。

方法体语句:就是完成功能的代码。

return:用于结束方法,返回结果。

返回值:就是功能的结果,由return带给调用者。

  • 构造方法的步骤

①明确返回值类型;

②按照方法的功能,给方法起名字;

③构造形参;

④构造方法体;

⑤返回结果。

  • 举个例子1
class SumTest {public static void main(String[] args) {int sum = add(5, 10);System.out.println("sum = " + sum);}public static int add(int a, int b) {int sum = a + b;return sum;}
}

输出:

sum = 15
  • 举个例子2

利用键盘录入两个整数,并构造max方法,返回最大值

import java.util.Scanner;
class FuncTest {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入第一个数:");int x = sc.nextInt();System.out.println("请输入第二个数:");int y = sc.nextInt();int max = max(x, y);System.out.println("max = " + max);}public static int max(int a, int b) {return a > b ? a : b;}}

输出:

请输入第一个数:
10
请输入第二个数:
5
max = 10
  • 举个例子3
import java.util.Scanner;
class FuncTest {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入行数:");int row = sc.nextInt();System.out.println("请输入列数:");int column = sc.nextInt();  //System.out.println(print(row,column));    //错误: 此处不允许使用 '空' 类型,返回值是void的方法不能输出调用//返回值是void的方法只能单独调用print(row,column);}public static void print(int a,int b) {for (int i = 1;i <= a ;i++ ) {for (int j = 1;j <= b ;j++ ) {System.out.print("*");}System.out.println();}//return ;                //如果返回值类型是void,return可以省略,即使省略系统也会默认给加上,形式是return;}
}

输出:

请输入行数:
3
请输入列数:
5
*****
*****
*****
  • 注意事项

①方法不调用不执行,只有被调用才会被执行;

②方法与方法是平级关系,不能嵌套定义;

③方法定义的时候参数之间用逗号隔开;

④方法调用的时候不用在传递数据类型;

⑤如果方法有明确的返回值,一定要有return。

方法重载

  • 方法重载的概念

方法重载是指在一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型参数的个数。调用重载方法时,Java编译器能通过检查调用的方法的参数类型和个数选择一个恰当的方法。

什么叫参数列表不同?

参数个数不同、参数类型不同、参数的顺序不同

  • 举个例子
class SumTest {public static void main(String[] args) {int sum1 = add(5, 10);System.out.println("sum1 = " + sum1);int sum2 = add(5, 10, 20);System.out.println("sum2 = " + sum2);double sum3 = add(1.2, 5.6);System.out.println("sum3 = " + sum3);}public static int add(int a, int b) {int sum = a + b;return sum;}public static int add(int a,int b, int c) {int sum = a+b+c;return sum;}public static double add(double b,double a) {double sum = a + b;return sum;}
}

输出:

sum1 = 15
sum2 = 35
sum3 = 6.8

第三次学JAVA再学不好就吃翔(part16)--方法及方法重载相关推荐

  1. 第三次学JAVA再学不好就吃翔(part107)--字符流的拷贝

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流的拷贝 拷贝纯文本文件 注意事项 自定义字符数组的拷贝 IO流 字符流的拷贝 拷贝纯文本文件 zzz.txt: 安徽财经大学 JAVA代码: pa ...

  2. 第三次学JAVA再学不好就吃翔(part65)--正则表达式

    学习笔记,仅供参考 文章目录 正则表达式 相关函数 matches函数 split方法 replace方法 replaceAll方法 举个例子 正则表达式 关于正则表达式方面的详细知识点,请看正则表达 ...

  3. 第三次学JAVA再学不好就吃翔(part45)--Object类

    学习笔记,仅供参考 文章目录 API概述 Object类 hashCode()方法 getClass()方法 toString()方法 equals()方法 ==与equals()方法的区别 API概 ...

  4. 第三次学JAVA再学不好就吃翔(part31)--super关键字

    学习笔记,仅供参考 文章目录 面向对象 继承 继承中成员变量的关系 this和super的区别 继承中构造方法的关系 继承中构造方法的注意事项 继承中的成员方法关系 面向对象 继承 继承中成员变量的关 ...

  5. 第三次学JAVA再学不好就吃翔(part102)--拷贝图片

    学习笔记,仅供参考,有错必纠 拷贝图片 逐个字节拷贝 实现 package com.guiyang.bean;import java.io.FileInputStream; import java.i ...

  6. 第三次学JAVA再学不好就吃翔(part90)--TreeSet

    学习笔记,仅供参考,有错必纠 文章目录 TreeSet TreeSet存储自定义对象 Comparable接口 定义Dog类实现Comparable接口 比较器 Comparator接口的方法 实现C ...

  7. 第三次学JAVA再学不好就吃翔(part70)--BigInteger类

    学习笔记,仅供参考,有错必纠 文章目录 BigInteger类 构造方法 方法 add方法 subtract方法 multiply方法 divide方法 divideAndRemainder方法 举个 ...

  8. 第三次学JAVA再学不好就吃翔(part69)--System类

    学习笔记,仅供参考,有错必纠 文章目录 System类 字段 方法 gc方法 exit方法 currentTimeMillis方法 arraycopy方法 举个例子 System类 System类是在 ...

  9. 第三次学JAVA再学不好就吃翔(part66)--Pattern类和Matcher类

    学习笔记,仅供参考 文章目录 Pattern类 典型的调用顺序 Pattern类的compile方法 Pattern类的matcher方法 Matcher类的matches方法 Matcher类 fi ...

  10. 第三次学JAVA再学不好就吃翔(part60)--Arrays类

    学习笔记,仅供参考 文章目录 Arrays类 Arrays类概述 成员方法 toString方法 sort方法 binarySearch 举个例子 Arrays类 Arrays类概述 此类包含用来操作 ...

最新文章

  1. python好用-Python有哪些常见的、好用的爬虫框架?
  2. RecyclerView列表控件漂亮时间线实现
  3. 左右侧滑菜单功能的实现
  4. 多线程:线程池里的队列BlockingQueue
  5. Github标星24.9k!适合初学者的有趣、入门级的开源项目
  6. Splunk和ElasticSearch深度对比解析
  7. 异步IO\数据库\队列\缓存
  8. 深度解析 TypeConverter TypeConverterAttribute (二)
  9. 撩开Docker的面纱
  10. [转]2020年2月份Github上最热门的开源项目,速来围观
  11. 小程序实现分享图片_实现自己的图像识别,基于百度sdk的的图片识别项目
  12. boost基础——随机数生成器
  13. 数据库连接池详解:原理+常用连接池
  14. 调研分析:全球与中国乙氧呋草黄市场现状及未来发展趋势
  15. 世嘉土星和世嘉MD手柄定义,如何自制土星和MD手柄
  16. VMware Fusion安装cloudera manager
  17. 漏洞复现-Wordpress 4.6 PwnScriptum RCE命令执行
  18. 郭天祥写的《我的大学》
  19. 阿里开源的10个神级项目
  20. efi linux win10,WIN10+UBUNTU15.04 kylin(EFI+GPT)

热门文章

  1. Ubuntu16.04下面spyder切换虚拟环境下面的python版本
  2. 中文正则表达式初步使用
  3. pytorch 构建神经网络模型总结
  4. linux nfs 多个ip,Linux – NFS (IPv6)
  5. 解决linux登录后总是时间过会就断开(解决ssh登录后闲置时间过长而断开连接)...
  6. 轻松记账工程冲刺第二天
  7. css中一些必要的公共样式
  8. 分布式架构中一致性解决方案——Zookeeper集群搭建
  9. win64环境下的一些配置
  10. 有关交换机——熟悉原理是必须的【转载】