java中如何类与类传参,Java自学-类和对象 传参

c4468b3f4df77e96b0a416fa2a870fba.png

Java自学-类和对象 传参

Java中的传参

变量有两种类型 基本类型 和类类型

参数也是变量,所以传参分为

基本类型传参

类类型传参

步骤 1 : 基本类型传参

基本类型传参

在方法内,无法修改方法外的基本类型参数

public class Hero {

String name; //姓名

float hp; //血量

float armor; //护甲

int moveSpeed; //移动速度

public Hero(){

}

//回血

public void huixue(int xp){

hp = hp + xp;

//回血完毕后,血瓶=0

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);

//血瓶,其值是100

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值就是变化后的值

7cfb879c7949c322f92485c1239857da.png

public class Hero {

String name; // 姓名

float hp; // 血量

float armor; // 护甲

int moveSpeed; // 移动速度

public Hero(String name, float hp) {

this.name = name;

this.hp = hp;

}

// 攻击一个英雄,并让他掉damage点血

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);

}

}

练习: 传参

(在方法中,使参数引用指向一个新的对象

外面的引用是指向原来的对象?还是新的对象?)

public class Hero {

String name; //姓名

float hp; //血量

float armor; //护甲

int moveSpeed; //移动速度

public Hero(){

}

public Hero(String name,float hp){

this.name = name;

this.hp = hp;

}

//复活

public void revive(Hero h){

h = new Hero("提莫",383);

}

public static void main(String[] args) {

Hero teemo = new Hero("提莫",383);

//受到400伤害,挂了

teemo.hp = teemo.hp - 400;

teemo.revive(teemo);

//问题: System.out.println(teemo.hp); 输出多少? 怎么理解?

}

}

原文链接:https://www.cnblogs.com/jeddzd/p/11437924.html

如有疑问请与原作者联系

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com

特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
c 类与对象课程设计的主要目的是通过运用所学的C面向对象程序设计理论知识,使用类和对象的概念来设计一个特定的系统或应用程序。这个课程设计的具体内容和功能可能因项目而异。举例来说,一个图书借阅系统的课程设计可以通过使用类和对象来设计图书管理员管理读者账户和图书的功能。另外,一个自助点餐系统的课程设计可以通过使用类和对象来实现点餐功能和处理订单的能力。总之,c 类与对象课程设计是通过实际项目来训练学生综合运用所学知识处理实际问题的能力,并加强面向对象的程序设计理念。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [超详细Java入门到精通自学视频课程-01、面向对象进阶简介.rar](https://download.csdn.net/download/weixin_54787054/88280673)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [C++面向对象程序设计课程设计-图书借阅系统](https://download.csdn.net/download/qq_57987156/85513646)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [C++面向对象课程设计_自助点餐系统.zip](https://download.csdn.net/download/weixin_48388330/75698721)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值