我们还是通过一个实例来具体说明
在这里我们讲到了构造方法的传参和不传参的。以及
this的四种作用,我们提到了三种
1.通过this可以调用本对象的所有方法和属性。
2.通过this区分相同的变量名。
3.通过this去调用其他的构造方法(注意是只是构造方法)
package classname;
/**
* 2.定义一个类名为狗(Dog)的类,
* Dog类包括两个属性:名称(name)和年龄(age),
* Dog还具有三个行为也叫方法:汪汪叫(bark)和
* 饥饿(hungry),显示信息(show),
* bark方法需要传入一个参数(参数是:汪汪叫的内容),方法体要求输出汪汪叫内容.hungry方法要求输出"主人,我饿了", show方法显示Dog名称和年龄.
*
*@author ygr
*
*首先建立一个Dog类。
*/
public class Dog {
String name;//成员变量姓名name
int age;//成员变量年龄
/**
* 这里的Dog()是构造方法一般是默认的且不会显示出来,结构为:
* public Dog(){}
*
*/
public Dog(){
this("旺财",4); //this第3个作用 : 作为方法名去调其它构造方法(注意是构造方法)
}
/**
* @param name
* @param age
* 4.重写Dog类构造方法,在Dog类构造方法中进行名称和年龄赋值.
*/
public Dog(String name,int age){
//初始化成员变量name,age
this.name = name;//this关键字第2个作用 : 使用this区分同名变量
this.age = age;
}
/**
*
* @param 传入一个String类型的参数(叫的内容)
*/
public void bark(String jjj) {
System.out.println(jjj);
}
public void hungry() {
}
/**
* 显示信息
*
* this关键字第1个作用 :通过this 可以调用本对象的所有方法和属性
*/
public void show() {
System.out.println("狗的名称是" + this.name + ",年龄" + this.age + "岁!");
}
}
下面是实例话一个对象DogDemo
package classname;
/**
* 3.实例化Dog类,给Dog类成员变量赋值,分别调用三个方法输出结果。
*
* @author ygr
*/
public class DogDemo {
public static void main(String[] args) {
Dog xiaogou = new Dog();// 每个类都有一个不带参数的默认构造方法 , 实例化Dog类,生成对象xiaogou
//xiaogou.age = 2;
//xiaogou.name = "旺财";
xiaogou.bark("123456798");//传参
xiaogou.hungry();
xiaogou.show();
}
}