this与super
this表示当前类对象
super表示调用父类对象
在子类的构造中可以用super来调用父类的构造方法
也可以用this来调用自身的其他的构造方法
但是在一个构造方法中只允许出现supersuper来调用父类的构造方法 或者 this来调用自身的其他的构造方法 ,且必须在该构造方法中的第一句
除此之外如果需要用到super或this调用父类或本类的属性或其他的方法时可以不在第一句
/**
*** 本类中的方法可以互相调用而不用使用对象来调用
* 非本类需要实例化出一个对象来使用对象来调用**
* this 代表当前调用本方法的对象
* @author 炜哥哥
*
*/
public class LittleSisterSister {
//属性
private String name;
private int age;
private String job;
private String hobby;
public LittleSisterSister(String name, int age, String job, String hobby) {
super();
this.name = name;
this.age = age;
this.job = job;
this.hobby = hobby;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getJob() {
return job;
}
public void setJob(String job) {
this.job = job;
}
public String getHobby() {
return hobby;
}
public void setHobby(String hobby) {
this.hobby = hobby;
}
//方法
//唱歌
public void singSong() {//this 代表当前调用本方法的对象
System.out.println(this.name+"是一个"+this.job+",她正在唱歌");
}
//表演
public void perform(String n,String c) {
System.out.println(n+"是一个"+c+",她正在拍戏");
}
//吃饭
public void eat(String n,String c) {
System.out.println(n+"是一个"+c+",她正在吃东西");
}
//睡觉
public void sleep(String n) {
System.out.println(n+"正在睡觉");
}
//卖萌
public void actingCute(String n) {
System.out.println(n+"正在发射爱心射线");
}
public static void main(String[] args) {
LittleSisterSister lss=new LittleSisterSister("迪丽热巴小姐姐",18,"演员","吃货");
LittleSisterSister lsss=new LittleSisterSister("长泽雅美小姐姐",18,"演员","吃货");
lss.perform(lss.getName(), lss.getJob());
lsss.singSong();
lss.singSong();
lsss.actingCute("发发");
}
}