java基础学习之感悟07

rel="File-List" href="file:///C:%5CDOCUME%7E1%5CADMINI%7E1%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C03%5Cclip_filelist.xml">

this 关键字的用法(DOTA篇)

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

引入:如果class “英雄” 有两个对象 “众神”,“电魂” 他们都有一个方法“放电”.

 

class英雄{void放电(int i) {/*……..*/}}

public class英雄放电{

public static void main(String[] x){

      英雄 众神= new英雄();

      英雄 电魂= new英雄();

      众神.放电(1);

      电魂.放电(2);

}

}

如果只有一个放电() 方法,如何让这两个对象都能调用放电() 呢。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

1.       this在方法内部获得对当前对象的引用。 通俗的说:调用了升了级的那个英雄

1.

public class 英雄{

int i =0;

英雄 等级(){

i++

return this; // 返回当前英雄的引用

}

 

void 显示(){System.out.println(“i = ” + i);}

 

public static void main(String[] w){

英雄 a= new 英雄();

a.等级().等级().等级().显示(); // 对同一个英雄执行多次升级

}

}

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

2.       this将当前对象传递给其他方法。 通俗的说:将被钩到的英雄传递给屠夫吃肉

2

class 屠夫{

public void (英雄 ){

英雄a =英雄.被钩到 ( );

System.out.println (“Fresh Meet”);..

}

}

class 钩子{

static英雄 被钩到了(英雄 ){

return ;

}

}

class英雄{

英雄.被钩到(){return 钩子.被钩到了(this);}

}

 

Public class FirstBlood{

public static void main(String[] w){

new 屠夫().(new 英雄());

}

}

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

3.       构造器中调另一个构造器。 通俗的说要DIY一个装备, 由于只给了好几个部件不全的外壳(构造器),只好在这些外壳里找到适合的零件,最后组合成了一个可用的装备。

3

public class 装备(){

int 敏捷值 = 0;

String 名字 = “?????”;

 

装备(int 属性点){

敏捷值 = 属性点;

System.out.println(“这个装备的敏捷值是” + 敏捷值);

}

 

装备(String 称呼){

System.out.println(“这个装备的名字是” + 称呼);

名字=称呼;

}

 

装备(String 名字, int 属性点){

this(属性点);

this.名字=名字; // this只能调用一个构造器

System.out.println(“名字与属性点”);

}

 

装备( ){

this(“蝴蝶”, 25);

System.out.println(“默认的构造器”);

}

 

void 显示敏捷值(){

System.out.println(“敏捷值为”+敏捷值+”名字为”+名字);

}

 

public static void main(String[] z){

装备 x=new 装备();

x.显示敏捷值();

}

}

 

输出结果:

这个装备的敏捷值是25

名字与属性点

默认构造器

敏捷值为25名字为蝴蝶

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值