在Java中函数又称之为方法,可以做是对象的过程。
方法的结构:
访问修饰符 返回值类型 方法名([参数列表]){
代码;
[return 具体的返回值;]
}
ps:在参数列表中有几点需要注意的:
基本数据类型做参数时,传递的是值,不能出方法的访问
引用数据类型做参数时,传递的时地址,可以影响方法外部
特殊:String做参数时,等同于基本数据类型。
例子:这里是将两个整数相加,和三个浮点数相加的方法 如下:
int add(int i, int j) {return i + j;}double add(double i, double j, double k) {return i + j + k;}
进行测试:
public static void main(String[] args) {JiSuanQi jsq = new JiSuanQi();Scanner sc = new Scanner(System.in);System.out.print("请输入两个数:");int a = sc.nextInt();int b = sc.nextInt();System.out.print("请输入三个数:");double i = sc.nextDouble();double j = sc.nextDouble();double k = sc.nextDouble();System.out.println(jsq.add(a,b));System.out.println(jsq.add(i,j,k));}
结果可以达到预期效果。
构造方法
构造方法:
默认每个类都有一个无参构造
如果该类由了有参构造,则默认的无参构造不再提供
此时如果还想用无参构造,则需要显式的定义无参构造
public Dog(){}public Dog(String name ,int health,int love,String strain){this.name=name;this.health=health;this.love=love;this.strain=strain;}
注:这里写了一个Dog类实现构造方法。
构造方法其主要作用是赋初值。
public static void main(String[] args) {Dog dog=new Dog();dog.name="二哈";dog.health=80;dog.love=60;dog.strain="哈士奇";dog.print();Dog dog2=new Dog();dog2.name="阿黄";dog2.health=100;dog2.love=100;dog2.strain="中华田园犬";//构造方法赋值Dog dog3=new Dog("阿吉",50,50,"柯基");dog3.print();
输出结果为:
我叫:二哈,品种是: 哈士奇,健康值为:80,与主人亲密度为:60
我叫:阿吉,品种是: 柯基,健康值为:50,与主人亲密度为:50
都可以达到预期效果。
方法重载:
在同一个类中
方法名相同 参数列表不同(不包含参数名)
ps:与返回值和访问修饰符无关
例:如刚开始的计算器程序中 add 方法名相同,但是参数不同 则实现了方法的重载。
int add(int i, int j) {return i + j;}double add(double i, double j, double k) {return i + j + k;}