java的两种构造方法~~~~~

来源:百度知道 编辑:UC知道 时间:2024/05/10 11:10:21
编写一个程序,用于显示姓名和年龄。
使用默认构造方法对name和age赋值,使用参数化构造方法,以传姓名和年龄的值
定义一个方法,同时显示两个构造方法的值

下面的是,我写的,不知道怎么不对~~~~

class Person{
String name;
int age;

Person(){
name="zhang san";
age=80;
}
Person(String name1,int age1){
name=name1;
age=age1;
}

void a(){
System.out.println("姓名: "+name+"年龄: "+age);
}
public static void main(String[] args){
Person person1=new Person("lisi",90);

person1.a();
}
}

拜托帮我写一个~~加注释的~~~~

public class Person{
String name;
int age;

Person(){
this.name="zhang san";
this.age=80;
}
//this表示调用该方法的当前对象,这里代表Person的实例
Person(String name,int age){
this.name=name;
this.age=age;
}
public static void main(String[] args) {
Person p1 = new Person();
System.out.println("p1的名字是"+p1.name+"年龄是"+p1.age);
Person p2 = new Person("lisi",90);
System.out.println("p2的名字是"+p2.name+"年龄是"+p2.age);

}
}

你的程序没问题

执行结果

姓名: lisi年龄: 90

不知道你哪里出的问题

你的这个程序单个运行没有任何问题。但是别的类调用就出错了。 你的类和构造函数都没有加pulic修饰符。
//pulic class Person
class Person{
String name;
int age;

//无参构造函数
//pulic Person(){
Person(){
name="zhang san";
age=80;
}
//有2个参数的构造函数
//pulic Person(String name1,int age1){<