网站总类,网站开发工作怎样,网站建设技术难点,网站的风格指的是什么个人主页#xff1a;兜里有颗棉花糖 欢迎 点赞#x1f44d; 收藏✨ 留言✉ 加关注#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【JavaSE_primary】 目录 一、方法的概念以及使用1.1什么是方法1.2方法定义1.3方法调用的执行过程1.4形参和实参的关系 二、方法的重载方… 个人主页兜里有颗棉花糖 欢迎 点赞 收藏✨ 留言✉ 加关注本文由 兜里有颗棉花糖 原创 收录于专栏【JavaSE_primary】 目录 一、方法的概念以及使用1.1什么是方法1.2方法定义1.3方法调用的执行过程1.4形参和实参的关系 二、方法的重载方法签名 一、方法的概念以及使用
1.1什么是方法
概念在Java中方法是一段包含了一系列语句的可重用代码块。方法用于执行特定的任务或操作并且可以带有输入参数和返回值。
方法的意义Java方法的意义在于提高代码的可读性、可维护性、复用性和灵活性。它们是构建模块化、组织良好且易于扩展的程序的重要组成部分。
在Java中方法格式如下
[访问修饰符] [返回类型] 方法名([参数列表]) {// 方法体// 包含一系列要执行的语句// 可能包括变量声明、控制流语句、表达式等[return 返回值;]
}1.2方法定义
我们来举几个具体方法的例子来进行演示请看
示例一add方法
public static int add(int x,int y) {return x y;
}示例二阶乘和
//方式一:
public static int facSum1(int n) {int sum 0;for(int i 1;i n;i){int ret 1;for(int j 1;j i;j){ret * j;}sum ret;}return sum;
}
//方式2:
public static int facSum2(int n){int sum 0;int ret 1;for(int i 1;i n;i){ret * i;sum ret;}return sum;
}在定义方法时我们需要注意以下几个注意事项
返回值类型如果方法有返回值返回值类型必须要与返回的实体类型一致如果没有返回值必须写成void方法名字采用小驼峰命名参数列表如果方法没有参数()中什么都不写如果有参数需指定参数类型多个参数之间使用逗号隔开方法体方法内部要执行的语句在java当中方法必须写在类当中同时方法不能嵌套定义在Java中是不存在方法声明的
1.3方法调用的执行过程
在方法调用时实参会被传递给对应的形参。当方法被调用时形参会以实参的值来初始化。在方法体中可以使用形参来处理传递进来的值。形参和实参之间的传递是通过值传递的方式进行的。
具体调用过程如下调用方法—传递参数—找到方法地址—执行被调方法的方法体—被调方法结束返回—回到主调方法继续往下执行
1.4形参和实参的关系
在 Java 中对于基本数据类型的形参形参是实参的值的拷贝。形参的改变不会影响到实参。
这里举个例子进行演示
public static void swap(int x,int y){int tmp x;x y;y tmp;
}
public static void main(String[] args) {int a 10;int b 20;System.out.println(交换之前:aa bb);swap(a,b);System.out.println(交换之后:aa bb);
}结果如下
这里补充一点在Java中局部变量时存储在栈上而且不能获取栈上的地址意思就是没有a、b这样的说法。如果要改变或者交换a、b这两个变量的话则必须将其存储到堆上。
另外方法的返回值是可选的. 有些时候可以没有的没有时返回值类型必须写成void。
二、方法的重载
在Java中方法重载是指在同一个类中定义多个方法这些方法具有相同的方法名但参数列表不同。方法重载可以通过改变参数的数量、类型或顺序来实现。
方法重载特点如下
1.方法名相同被重载的方法必须具有相同的方法名。2.参数列表不同重载的方法必须具有不同的参数列表包括参数的个数、类型或顺序的不同。3.返回类型可以不同方法重载与方法的返回类型无关。
下面举个例子
public int add(int a, int b) {return a b;
}public double add(double a, double b) {return a b;
}public int add(int a, int b, int c) {return a b c;
}方法签名
方法签名即经过编译器编译修改过之后方法最终的名字。具体方式方法全路径名参数列表返回值类型构成方法完整的名字。
Java编译器是通过方法签名来识别每个方法的。在编译时会根据方法的签名来唯一识别每个方法并进行方法调用的匹配。
方法签名由以下部分组成 1.方法名称方法的名称用于标识方法本身。 2.参数列表参数列表指定了方法接受的参数的数量、类型和顺序。参数列表中的每个参数都包含参数的类型和参数的顺序。 注意方法签名与以下因素无关 1.方法的返回类型方法的返回类型不包含在方法签名中所以在方法重载时只要方法的签名不同返回类型可以不同。 2.方法的访问修饰符方法的访问修饰符例如 public、private 等也不包含在方法签名中。 方法签名的意义方法签名的唯一性确保了编译器可以根据参数的类型和数量来正确匹配方法调用。
请看 所以在同一个作用域中不能定义两个相同名称的标识符否则编译器无法识别不知道该调用哪一个了方法签名不一样调用的方法当然就不一样啦。
嗯就到这里啦再见啦友友们