当类中的成员变量与成员方法中的参数重名时,会导致方法无法直接使用成员变量。
示例:创建demo类,定义一个成员变量name并赋初值,再定义一个成员方法showName(String name),输出方法中name的值。代码如下:
package zhtestdemo;文章来源:https://www.toymoban.com/news/detail-814511.html
public class demo { //创建类,类名叫demo
/**/
String name="abc";
public void showName(String name) {
System.out.print(name);
}
public static void main(String[] args) {
demo book=new demo();
book.showName("123");
}
在Java语言中规定使用this关键字来代表本类对象的引用,this关键字被隐式地用于引用对象的成员变量和方法。
示例:使用this关键字调用书名属性
创建一个借书类demo,借书类中有书名属性name,参数为name的构造方法和借书方法borrow()。编写一个程序,使用this关键字调用书名属性后,借阅《战争与和平》这本书。代码如下:
package zhtestdemo;
public class demo { //创建类,类名叫demo
/**/
String name; //成员变量name
public demo(String name) { //有参构造方法demo
this.name=name; //将参数name的值赋给成员变量name
}
public void borrow() { //借书方法
System.out.print("请前往借阅登记处领取"+name+"。"); //输出借书的名称
}
public static void main(String[] args) {
demo book=new demo("《战争与和平》"); //创建参数为"《战争与和平》"的借书类对象
book.borrow(); //调用借书方法
}
}
练习:创建教师类,类中有姓名、性别和年龄三个属性,在构造方法中使用this关键字分别为这三个成员属性赋值。
package zhtestdemo;
public class demo { //创建教师类,类名叫demo
/**/
String name; //成员变量name、gender、age
char gender;
int age;
public demo(String name,char gender,int age) { //有参构造方法demo
this.name=name; //将参数name的值赋给成员变量name
this.gender=gender;
this.age=age;
}
public static void main(String[] args) {
demo teacher=new demo("张三",'男',19); //创建教师类对象
System.out.print("教师的姓名是"+teacher.name+'\t'+"教师的性别是"+teacher.gender+'\t'+"教师的年龄是"+teacher.age+"岁。"); //调用借书方法
}
}
文章来源地址https://www.toymoban.com/news/detail-814511.html
到了这里,关于Java编程练习之this关键字的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!