还是毕老师可上的练习,自己写了一遍
public class Person {
private String name;private int age;
//构造方法,不写构造方法系统会默认加个“Person(){}”的构造方法
Person(){
System.out.println("A:name="+name+",age="+age);
}
//构造方法的重载
Person(String name){
this.name=name;
System.out.println("B:name="+name+",age="+age);
}
//构造方法的重载
Person(String name,int age){
this.name=name;
this.age=age;
System.out.println("C:name="+name+",age="+age);
}
public void setName(String name){
this.name=name;
/*this关键字,this 代表本类对象,
带便它所属的方法所属对象的引用*/
}
public String getName(){
return name;
}
//构造代码块
{
System.out.println("这是构造代码块,优先于构造方法执行");
}
/*this的应用:当定义类中的功能是,该方法内部要用到该方法的,这时用this表示这个对象
但凡本类功能内部使用了本类对象,都用this表示*/
public boolean compare(Person p){
return this.age==p.age;
}
}
public class PersonDemo {
public static void main(String[] args) {
// TODO 自动生成的方法存根
Person p1=new Person();
Person p2=new Person("张三");
Person p3=new Person("李四",20);
p2.setName("王五");
System.out.println("B改名后:"+p2.getName());
boolean x=p1.compare(p3);
System.out.println(x);
}
}