一·基本的概念
java里的方法和C里面的函数很相似,在面向对象的程序中,习惯叫做方法,而面向过程的程序中习惯叫做函数。
定义:解决 一类问题的代码的有序组合,是一个功能模块。
二·基本的格式
访问修饰符 访问值类型 方法名(参数列表){
方法体
}
1,访问修饰符:方法允许访问的权限范围,可以是 public,private,protected甚至可以省略,其中 public 表示该方法可以被 其他任何代码调用
2,访问值类型:可以有返回值也可以没有返回值,就像C语言一样。
3,方法名:需要使用合法的标识符
java的标识符:由字母,数字,下划线(“_”),和符号(“$”)组成,但开头不能由数字组成
java的方法名和变量的标识符命名规则:第一个单词的首字母要小写,从第二个单词开始单词的首字母需要大写(例如:firstName)
4,参数列表:根据方法是否带参、是否带返回值,可将方法分为四类:
1)无参无返回值方法
2)无参带返回值方法
3)带参无返回值方法
4)带参带返回值方法
对于Java中的方法参数传递,无论传递的是原生数据类型,还是引用类型,统一是传值。
5,方法体:方法体包含具体的语句,定义该方法的功能
三·方法调用
按照有无返回值主要可以分为两类:有返回值和没有返回值
1,有返回值:
有参数的传递
public class TestMax {
/** 主方法 */
public static int max(int num1, int num2) {
int result;
if (num1 > num2)
result = num1;
else
result = num2;
return result;
}/** 返回两个整数变量较大的值 */
public static void main(String[] args) {
int i = 5;
int j = 2;
int k = max(i, j);
System.out.println(k);
}
}
输出的结果为5;这部分就像C语言一样理解就可以了,很多的返回值规则就和C是一样的。(函数部分在上面或者是在下面都可以,结果一样)
没有参数的传递(没有形参但是有返回值),需要新创建一个对象
例如下面的:HelloWord hello=new HelloWord();
以及后面的调用:int sum=hello.calcSum();
public class HelloWord {
public int calcSum(){
int a=5;
int b=12;
int sum=a+b;
return sum;
}
public static void main(String [] args){
HelloWord hello=new HelloWord();
int sum=hello.calcSum();
System.out.println(sum);
}
}
输出结果为17,如果没有上面的被标出来的语句或者是把它改成C语言的模式,会报错。
2,没有返回值的情况
无参的情况
public void show(){
System.out.println("HelloWord");
}
带参数的情况
当然这种情况必须注意参数传递的方法:举例:
HelloWord hello=new HelloWord();
hello.show(参数值);
public void show(String name){
System.out.println("name");
}
总结一下:
要注意的部分就是需要传参数的时候的,传递参数的方法和C语言的不一样,其他部分的要求和C语言的一样。
四·方法的重载
基本的定义:
如果同一个类中包含了两个或两个以上方法名相同、方法参数的个数、顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。
判断方法重载的依据:
1、 必须是在同一个类中
2、 方法名相同
3、 方法参数的个数、顺序或类型不同
4、 与方法的修饰符或返回值没有关系
区分调用的是哪个方法:按照C语言读函数的方式一样理解。