Java的方法定义及调用
原创约 1361 字大约 5 分钟...
190-Java的方法定义及调用.md
注意
本博文仅供学术研究和交流参考,严禁将其用于商业用途。如因违规使用产生的任何法律问题,使用者需自行负责。
概念




示例代码
- 方法的定义
package com.tencent.chapter05;
/**
* <p>Title: _01MethodDingYi</p>
* <p>
* Description:
* 语法:
<访问权限控制符> <修饰符> 返回值类型 方法名称(参数类型 参数名称,参数类型 参数名称....)
{
方法体;
return 返回值;
}
访问权限控制符:public protected <default> private
修饰符: static:表示方法可以被"类名.方法名()"直接调用
final :表示方法不可以被覆盖
返回值类型:可以基本数据类型,也可以是引用类型,也可以没有返回值void
return后的返回值必须与返回值类型保持一致
方法名称:camel驼峰法规则,首字母小写,其余单词的首字母大写,例如methodOne
参数列表:可以没有参数,可以一个或多个参数参数,多个参数之间","逗号隔开
形式参数(形参):定义在放后面的参数列表,用于指定参数类型与参数名称,告诉调用方法的人使用该方法时,应该传递什么类型的参数,例如add(int x,int y)中的x与y
实际参数(实参):调用方法时,传递的实际的值,不需要指定类型,例如add(10, 20);中的10与20
return语句:return后的返回值类型必须与返回值类型保持一致
如果返回值类型为void,return可以省略
return只能定义一次,且return之后的语句不在执行
方法的分类:有无返回值,有无参数
① 有返回值,有参数
② 有返回值,无参数
③ 无返回值,有参数
④ 无返回值,无参数
* </p>
* @author xianxian
* @date 2023年1月3日
*/
public class _01MethodDingYi {
/**
* <p>Title: add</p>
* <p>
* Description:
* ① 有返回值,有参数
* </p>
* @param x 参数一
* @param y 参数二
* @return x+y
*/
public static int add(int x,int y)
{
int sum = x + y;
return sum;
}
/**
* <p>Title: minus</p>
* <p>
* Description:
* ② 有返回值,无参数
* </p>
* @return 差
* @return
*/
public static int minus()
{
int x = 20;
int y = 10;
int result = x - y;
return result;
}
/**
* <p>Title: multiply</p>
* <p>
* Description:
* ③ 无返回值,有参数
* </p>
* @param x 参数一
* @param y 参数二
*/
public static void multiply(double x,double y)
{
double result = x * y;
System.out.println("求积:" + result);
//return;//可省略
}
/**
* <p>Title: divide</p>
* <p>
* Description:
* ④ 无返回值,无参数
* </p>
*/
public static void divide()
{
int x = 20;
int y = 10;
int result = x / y;
System.out.println("求商:" + result);
}
public static void main(String[] args) {
//① 有返回值,有参数
int result = add(10, 20);
System.out.println("求和:" + result);
//② 有返回值,无参数
int result2 = minus();
System.out.println("求差:" + result2);
//③ 无返回值,有参数
multiply(10.5, 10.0);
//④ 无返回值,无参数
divide();
}
}
- 值传递与引用地址传递
package com.tencent.chapter05;
import java.util.Arrays;
/**
* <p>Title: _02ZhiChuanDiYuYingYongDiZhiChuanDi</p>
* <p>
* Description:
* </p>
* @author xianxian
* @date 2023年1月3日
*/
public class _02ZhiChuanDiYuYingYongDiZhiChuanDi {
/**
* 值传递 ---------基本数据类型与String字符串类型均为值传递,方法中对参数的修改,不会影响传递之前的变量值
*/
public static void getX(int x)
{
x = 6666;
System.out.println("getX :" + x);//6666
}
/**
* 引用地址传递-------引用对象传递参数时,传递的为引用地址,方法中对参数的任意修改,将影响原参数的信息
*/
public static void getArray(int[] array)
{
array[4] = 888;
System.out.println("getArray:" + array);//[I@2d95bbec
System.out.println("getArray:" + Arrays.toString(array));//[1, 2, 3, 4, 888]
}
public static void main(String[] args) {
//值传递 ---------基本数据类型与String字符串类型均为值传递,方法中对参数的修改,不会影响传递之前的变量值
int x = 10;
getX(x);
System.out.println("main :" + x);//10
//引用地址传递-------引用对象传递参数时,传递的为引用地址,方法中对参数的任意修改,将影响原参数的信息
int[] array = new int[]{1,2,3,4,5};
getArray(array);
System.out.println("main:" + array);//[I@2d95bbec
System.out.println("main:" + Arrays.toString(array));//[1, 2, 3, 4, 888]
}
}
- 方法的重载
package com.tencent.chapter05;
/**
* <p>Title: _03MethodOverrid</p>
* <p>
* Description:
* 法的重载(reload): 允许在一个类中定义一个以上同名的方法
作用:调用同一类中,同一方法名,传入不同的参数,实现同一功能
方法重载的规则:
1.方法名一致
2.参数类型不一致(参数类型不一致、参数个数不一致、参数顺序不一致)
3.返回值类型可以一致,可以不一致
* </p>
* @author xianxian
* @date 2023年1月3日
*/
public class _03MethodOverrid {
//加法
public static int add(int x,int y)
{
int sum = x + y;
return sum;
}
//加法:参数类型不一致
public static double add(double x,double y)
{
double sum = x + y;
return sum;
}
//加法:参数个数不一致
public static int add(int x,int y,int z)
{
int sum = x + y + z;
return sum;
}
//加法:参数顺序不一致
public static double add(int x,double y)
{
double sum = x + y;
return sum;
}
//加法:参数顺序不一致
public static double add(double x,int y)
{
double sum = x + y;
return sum;
}
public static void main(String[] args) {
System.out.println(add(10, 20));
System.out.println(add(10.15, 20.15));
System.out.println(add(10, 20, 30));
System.out.println(add(10, 22.22));
}
}
分割线
相关信息
以上就是我关于 Java的方法定义及调用 知识点的整理与总结的全部内容,希望对你有帮助。。。。。。。
Powered by Waline v2.15.4