转发请注明出处:
安卓猴的博客(http://sunjiajia.com)
本节课程将学习以下内容:
- this的涵义
- 使用this调用成员变量和成员函数
- 使用this调用构造函数
this的涵义
this代表一个对象,它代表了调用当前类中的变量或者函数的对象。
使用this调用成员变量和成员函数
例子:(请动手)
1.新建一个名为Person.java的Java源文件:
class Person{
String name;
void talk(){
// 这里的this就是一个Person的对象。
System.out.println("My name is " + this.name);
}
}
2.新建一个名为Demo01.java的Java源文件:
class Demo01{
public static void main(String[] args) {
Person p1 = new Person();
p1.name = "zhang3";
Person p2 = new Person();
p2.name = "li4";
// 由于Person类中的talk方法中,有了this.name的表达,用了this关键字,
// 因此,当p1调用talk()方法时,this.name相当于p1.name;
// 当p2调用talk()方法时,this.name相当于p2.name。
p1.talk();
p2.talk();
}
}
使用this调用构造函数
- 格式:this(参数1,参数2);
- 它的作用是调用同一个类中的其他构造函数,
- this的()中有几个参数,就会调用有几个参数的构造函数。
- 注意:它必须放在当前构造函数的第一行。
例子:(请动手)
1.新建一个名为Dog.java的Java源文件:
class Dog{
String name;
int age;
String color;
Dog(){
System.out.println("无参数的构造方法");
}
Dog(String name, int age){
// 这里的this.name代表成员变量name,“=”后面的name就代表构造函数的参数name;
this.name = name;
this.age = age;
System.out.println("2个参数的构造方法");
}
Dog(String name, int age, String color){
// (重点)使用this调用构造函数
// 格式:this(参数1,参数2);
// 它的作用是调用同一个类中的其他构造函数,
// this的()中有几个参数,就会调用有几个参数的构造函数
this(name, age);
this.color = color;
System.out.println("3个参数的构造方法");
}
void shout(){
// 这里的this就是一个Person的对象。
System.out.println("Dog's name is " + this.name);
}
}
2.新建一个名为Demo02.java的Java源文件:
class Demo02{
public static void main(String[] args) {
Dog dog1 = new Dog("小白", 1, "白色");
System.out.println("=============我是分割线=============");
Dog dog2 = new Dog("小黑", 3);
}
}
网友评论