类的构造函数与getter、setter方法常用到this关键字(JavaBean)
JavaBean是一种可重用的Java组件,它可以被Applet、Servlet、SP等Java应用程序调用.也可以可视化地被Java开发工具使用。它包含属性(Properties)、方法(Methods)、事件(Events)等特性。
public class Person {
//==========静态属性===========
//--想学编程的可以来我这看看----
private String name//姓名
private int age//年龄
private String gender //性别
//==========动态行为===========
public void readBook(String book) {
System.out.println("reading " + book)
}
public String getName() {
return name
}
public void setName(String name) {
this.name = name//this.name就是上面的private String name
}
public int getAge() {
return age
}
public void setAge(int age) {
this.age = age
}
public String getGender() {
return gender
}
public void setGender(String gender) {
this.gender = gender
}
}
官方定义
this 是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针。
this 的用法在 Java 中大体可以分为3种:
1.普通的直接引用
这种就不用讲了,this 相当于是指向当前对象本身。
2.形参与成员名字重名,用 this 来区分:
class Person {
private int age = 10
public Person(){
System.out.println("初始化年龄:"+age)}
public int GetAge(int age){
this.age = age
return this.age
}
}
public class test1 {
public static void main(String[] args) {
Person Harry = new Person()
System.out.println("Harry's age is "+Harry.GetAge(12))
}
}
希望对您有所帮助!~
java中this有两种用法:1、代表当前类
public class Dog{
private String name
private float age
public setName(String name){
this.name = name
}
.......
}
这里的this就代表的当前的这个Dog类。this.name可以理解为dog.name,只是理解,不是等于。
2、在构造函数中的使用
public class Dog{
private String name
private int age
//有一个参数的构造函数
public Dog(String name){
this.name = name
}
public Dog(String name,int age){
this.name = name
this.age = age
}
//这个无参构造方法里调用的有两个参数的构造方法,这个也就是this的第二种用法了!
public Dog(){
this("nihao",20)
}
}
Java关键字this只能用于方法方法体内。个对象创建后,Java虚拟机(JVM)就会给这 个对象分配一个引用自身的指针,这个指针的 名字就是 this。因此,this只能在类中的非静 态方法中使用,静态方法和静态的代码块中绝 对不能出现this,这在“Java关键字static、fina l 使用总结”一文中给出了明确解释。并且this只 和特定的对象关联,而不和类关联,同一个类 的不同对象有不同的this。