1.方法
–Java中没有函数这个概念,只有方法.
方法是一段代码,可以有很多条语句,通过{}进行修饰,可以在需要使用的地方进行代码的使用.
方法的优点:
1)使得同一段代码反复使用 —>提升代码的复用性
2)使得代码更清晰条理
3)代码更具有面向对象的思维
2.方法的定义
返回值类型 方法的名字(方法的参数化列表){
方法体
}
返回值类型是一个数据类型,支持八大基本数据类型和String类型以及数组类型.返回值是一个方法执行完毕之后,携带给使用该方法的人的一个结果.
方法的名字和标识符命名规范一样,类似于变量的名字.
参数化列表:在使用方法时的一些输入条件,如果没有这些条件,该方法无法使用.
方法体类似于循环体,使用该方法的时候会执行的代码.
3.无参无返回值
方法的定义:
static void 方法名(){
//方法体
}
注意:
1)方法不允许在其他方法内部定义,所有的方法包括main都是并列的
2)void 代表当前方法没有返回值,无需设置任何返回.
方法的使用:
方法名();
1)方法必须在定义之后才可使用
2)方法的使用称为调用
3)方法的调用可以在任何方法的方法体内进行
public class Method1 {
public static void main(String[] args) {
hello();//方法的调用
}
//方法的定义
static void hello() {
System.out.println("Hello world!");
}
}
4.有参无返回值
方法定义:
static void 方法名(形式化参数列表){
//方法体
}
注意:
1)形式化参数列表相当于定义变量,但是不允许赋值,例:int a
2)形式化参数列表简称为形参;
3)多个形参之间使用逗号分割,例:int a,double b
4)方法允许设置多个形参,没有上限,也可以一个都不写(无参)
5)形参的类型允许设置为所有类型.且和顺序无关.
方法调用:
方法名(实际化参数列表);
注意:
1)实际化参数列表简称实参
2)实参要按照方法定义过程中形参的类型和顺序以及个数进行一对一的赋值.
3)实参不需要设置类型和赋值符号,直接写数值即可
4)实参的名字无需和形参的名字一致
public class Method2 {
public static void main(String[] args) {
showInfo(1, 2);//调用
}
static void showInfo(int a, int b) {//定义
int sum = a + b;
System.out.println(sum);
}
}
5.有参有返回值
方法定义:
static 返回值类型 方法名(形参列表){
//方法体
return 返回值;
}
注意:
1)返回值类型 只允许设置一个
2)return语句必须位于方法逻辑意义上的最后一行.
3)return后面是方法的返回值,注意,再一次调用期间,一个方法只允许返回一个返回值.
4)方法的返回值类型必须和方法名前面声明的类型一致,上行下效的统一.
方法调用:
调用的方法的返回值类型 变量=方法名(实参列表);
注意:
1)对于有返回值的方法可以接收返回值,也可以选择不接收
2)接受返回值的变量的类型必须和方法的返回值一致
3)方法的返回值返回给了方法的调用者
6.方法的构建
因素:
1)是否有必要
2)考虑方法的返回值
当我们需要一个执行的结果的时候
3)考虑方法的参数
所需要的一些资源
方法体:
把所有的参数当做普通的变量使用,简明扼要的处理我们需要解决的问题,尽可能先实现需求,再争取对代码进行进一步的优化.
7.场景
数组
1)数组遍历
2)查询数组最大值
3)计算数组素有元素的和
4)查询数组最小值及其下标
8.方法的重载
方法的名称相同,方法的参数列表不同,和返回值无关,把这样的多个重名方法之间的关系称为重载关系.
参数列表不同:
1)参数的个数不同
2)参数的类型不同
3)在参数的类型不同的前提下,参数的顺序不同
c语言里,函数必须从上往下书写,第10行定义的函数无法调用在21行定义的函数.在c里设计了一个称为函数声明的语法,提前告知第10行的函数下面存在一个函数可以使用.
Java的设计者举得没有必要要求程序员决定方法的声明,程序自动完成了声明.但是double
countSum(double,double)–函数声明 得到了保留:
最终:
Java把下列两个方法看做同一个方法:
static void add(int a,int b){}
static void add(int b,int a){}
这样写可以:
static void add(double a,int b){}
static void add(int b,double a){}
场景:
1)计算多个数的和
2)计算多种数的和