方法与方法重载
程序员文章站
2022-04-29 17:22:44
方法与方法重载方法的参数传递会使用构造方法...
方法与方法重载
方法的参数传递
形参和实参:
形式参数:就是在定义函数或过程的时候命名的参数。通俗讲就是一个记号。形参名字可以随便取,但是要符合驼峰命名规则,同时要有意义。
实际参数:就是在执行时,调用函数或过程时,传递给函数或过程的参数。通俗讲就是实际值。实参名字也可以随便取,但是遵循驼峰命名规则,同时也要有意义。
1.实参和形参的类型必须一致,名字可以不一致
2.方法有没有返回值与方法有没有参数无关
3.方法参数可以有多个,但多个参数之间用逗号隔开
4.形整和实参数量一定要一致,数据类型一定要一致
参数:
基本数据类型做参数时,传递的是值,不能出方法的范围
引用数据类型做参数时,传递的是地址,可以影响方法外部
特殊:String做参数时,等同于基本数据类型
public class Dog {
String name;
int health;
int love;
String strain;
// 默认的无参构造方法、构造器
public Dog(){
}
//一旦有了有参构造,默认的无参构造不在生效
//就需要显式的写出无参构造
//有参构造重载、参数都叫局部变量
public Dog(String name,int haelth,int love,String strain){
this();//this调用构造方法时必须在构造方法第一条
//this关键字,只带本类对象
this.name=name;
this.health=health;
this.love=love;
this.strain=strain;
}
void print(){
System.out.println("我叫:"+name+",品种是:"+strain+",健康值是:"
+health+",喜爱值是:"+love);
}
}
public class TestDog {
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=90;
dog2.love=70;
dog2.strain="柯基";
dog2.print();
}
}
会使用构造方法
方法的结构:
1.访问修饰符 返回值类型 方法名([参数列表]){
代码;
[return 具体的返回值;]
}
构造方法:
默认每个类都有一个无参构造
如果该类有了有参构造,则默认的无需构造不在提供
此时如果还想用无参构造,则需要显式的定义无参构造
方法重载:
在同一个类中 (前提条件)
方法名相同
参数列表不同(不包含参数名)
ps:与访问修饰符和返回值无关
练习:简易计算器
需求说明:实现简易计算器,分别实现两个整数、三个浮点数的加法运算
public class Counter {
void count(int num1,int num2){
System.out.println(num1+" + "+num2+" = "+(num1+num2));
}
void counter(double num1,double num2,double num3){
System.out.println(num1+" + "+num2+" + "+num3+" = "+(num1+num2+num3));
}
public static void main(String[] args) {
Counter counter=new Counter();
counter.count(1,2);
counter.counter(1,2,3);
}
}
成员变量和局部变量的区别:
1.作用域不同
局部变量的作用域仅限于定义它的方法
成员变量的作用域在整个类内部都是可见的
2.初始值不同
Java会给成员变量一个初始值
Java不会给局部变量赋予初始值
注意:
1.在同一个方法中,不允许有同名局部变量在不同的方法中,可以有同名局部变量
2.在同一个类中,成员变量和局部变量同名时,局部变量具有更高的优先级
本文地址:https://blog.csdn.net/zhoutao719/article/details/107472321
下一篇: 创建型模式:原型模式