classTestPersonDemo2{publicstaticvoidmain(String [] args){
Person p=newPerson();
p.speak();
Person p1=newPerson("旺柴");
p1.setName("旺旺");//改名字
p1.speak();
Person p2=newPerson("小强",10);
p2.speak();}publicvoidsetName(String n){
name=n;}}
二:一般函数和构造函数的区别
构造函数 -对象创建时,就会调用与之对应的构造函数,对对象进行初始化 -对象创建时只会被调用一次
一般函数 -对象创建后,只有需要函数功能的时候才会被调用 -对象创建后可以调用无数次
classPerson{private String name ;privateint age;//dingyigouzaohanshu
Person (){
name="baby";
age=1;
System.out.println("person run ");}Person(String n){
name =n;}publicvoid speak (){
System.out.println(name+":"+age);}}classTestPersonDemo{publicstaticvoidmain(String [] args){
Person p=newPerson();
p.speak();
Person p1=newPerson();
p1.speak();}}
三:什么时候定义构造函数
在描述该事物时,该事物已经存在具备一些内容,并定义在构造函数中
构造函数可以有多个,用于不同的对象进行针对性的初始化
多个函数可以以在类中重载的形式体现
classPerson{
String name;int age;Person(){this.name=name;}Person(){this(name);this.age=age;}publicvoidspeak(){
System.out.println(name+":"+age);}publicbooleancompare(Person p){/*if(this.age==p.age)
return true;
else
return false;
*/returnthis.age==p.age;}}classTestPersonCompare{publicstaticvoidmain(String [] args){
Person p1=newPerson("zz"+18);
p.speak();
Person p2=newPerson("zzz"+17);
p2.speak();}}