作者:妩媚天天想我 | 来源:互联网 | 2023-10-12 20:34
变量有两种类型基本类型和类类型 参数也是变量,所以传参分为 基本类型传参 类类型传参步骤1:基本类型传参步骤2:引用与步骤3:类类型传参步骤4:练习-传参步骤5:答案-传参步骤 1
变量有两种类型 基本类型 和类类型
参数也是变量,所以传参分为
基本类型传参
类类型传参
步骤1:基本类型传参
步骤2:引用与=
步骤3:类类型传参
步骤4:练习-传参
步骤5:答案-传参
步骤 1 : 基本类型传参
基本类型传参
在方法内,无法修改方法外的基本类型参数
public
class
Hero {
String name;
float
hp;
float
armor;
int
moveSpeed;
public
Hero(){
}
public
void
huixue(
int
xp){
hp = hp + xp;
xp=
0
;
}
public
Hero(String name,
float
hp){
this
.name = name;
this
.hp = hp;
}
public
static
void
main(String[] args) {
Hero teemo =
new
Hero(
"提莫"
,
383
);
int
xueping =
100
;
teemo.huixue(xueping);
System.out.println(xueping);
}
}
步骤 2 : 引用与=
如果一个变量是基本类型
比如 int hp = 50;
我们就直接管hp叫变量
=表示赋值的意思。
如果一个变量是类类型
比如 Hero h = new Hero();
我们就管h叫做引用。
=不再是赋值的意思
=表示指向的意思
比如 Hero h = new Hero();
这句话的意思是
引用h,指向一个Hero对象
步骤 3 : 类类型传参
类类型又叫引用
第24行的引用 teemo与 第17行的引用hero,是不同的引用
通过调用garen.attack(teemo, 100); 使得这两个引用都指向了同一个对象
所以在第18行hero.hp = hero.hp - damage; 就使得该对象的hp值,发生了变化
因此第25行,打印该对象的Hp值就是变化后的值
public
class
Hero {
String name;
float
hp;
float
armor;
int
moveSpeed;
public
Hero(String name,
float
hp) {
this
.name = name;
this
.hp = hp;
}
public
void
attack(Hero hero,
int
damage) {
hero.hp = hero.hp - damage;
}
public
static
void
main(String[] args) {
Hero teemo =
new
Hero(
"提莫"
,
383
);
Hero garen =
new
Hero(
"盖伦"
,
616
);
garen.attack(teemo,
100
);
System.out.println(teemo.hp);
}
}
更多内容,点击了解: https://how2j.cn/k/class-object/class-object-parameter/293.html