夜光序言:
惺惺相惜,一见倾心,再见钟情,三生有缘,百年好合。
正文:
package com.Genius.sixth;
public class ThisTest {
private String eat = "正在吃饭";
private String tea = "正在喝茶";
private String work = "正在工作";
public void King(){
System.out.println("使用this关键词来引用成员变量,各变量输出为:");
System.out.println("king"+this.eat);
System.out.println("king"+this.tea);
System.out.println("king"+this.work);
}
public void Empress(){
System.out.println("不使用this关键词来引用成员变量,各变量输出为:");
System.out.println("Empress"+eat);
System.out.println("Empress"+tea);
System.out.println("Empress"+work);
}
public static void main(String[] args) {
// 夜光:我们来了解一下this关键词~~,在项目开发中会经常遇到
// 使用this关键词,可以不通过对象引用成员变量和方法
// 打个哈哈,比如,我们去找一个领导,可以不用联系他秘书,直接call他即可
new ThisTest().King();
new ThisTest().Empress();
}
}
夜光分析:
我们发现一般情况下,this可有可无~~
但是如果成员变量和方法名中的参数相同,那么this就很重要
来开个玩笑:
单位有两个king,我们突然发现可以通过电话直接锁定我们想找的king
package com.Genius.sixth;
public class ThisTest2 {
String eat = "正在吃饭";
String tea = "正在喝茶";
int i = 16;
public void King(int i){
if(i>11&&i<14){
System.out.println("现在时间是:" + i + "点,是" + eat);
}else if(i>15&&i<19){
System.out.println("现在时间是:" + i + "点,是" + tea);
}
}
public void Empress(int tea){ //这个我们用下this关键词,以示区分
if(i>11&&i<14){
System.out.println("现在时间是:" + this.i + "点,是" + eat);
}else if(i>15&&i<19){
System.out.println("现在时间是:" + this.i + "点,是" + tea);
}
}
public static void main(String[] args) {
// 夜光:我们来了解一下this关键词~~,在项目开发中会经常遇到
// 使用this关键词,可以不通过对象引用成员变量和方法
// 打个哈哈,比如,我们去找一个领导,可以不用联系他秘书,直接call他即可
ThisTest2 vp = new ThisTest2();
vp.King(12);
vp.Empress(18);
}
}
package com.Genius.sixth;
public class ThisConstructor {
String name;
public ThisConstructor(String onename){
name = onename;
System.out.println("姓名"+name);
}
public ThisConstructor(){
this("Genius");
}
public static void main(String[] args) {
// 夜光:我们再来演示一下this~~
new ThisConstructor();
}
}
夜光:
被调用的构造方法需要放在方法的最开始位置~~