java的类中的this的必要性

输出结果: 传入的name:李四age:10 student属性name:张三age:18

怎么能使其结果变为

输出结果: 传入的name:李四age:10 student属性name:李四age:10

呢?

有两种方法

student类中的name和age不设初始值,不设初值时,name=name;age=age;就可以使student中的name变为李四,age变为10

②this关键字

this关键字指自身,this即代表自己,this.属性访问的是自己的属性

将student类中的属性变为

this指自身,this即代表自己,this.属性访问的是自己的属性、this()访问的就是自己的无参构造方法。

将student类中的name=name;改为this.name=name;age=age;改为this.age=age;

原因:

不用this的话,java不确定那个传入的name是不是给student类里的name的,所以在它本身含有自己的name的时候,不会改变他本身的数据,再返到main函数里面的话,返回来的name和age还是student里面的,而不是传入参数的

经验分享 程序员 微信小程序 职场和发展