需求:数据建模
描述程序员和项目经理
分析:
程序员:( programmer)
特点:
姓名
年龄
部门
薪水 "李华",22,"市场部",2000,6000
行为: "刘强",29,"市场部",5000,10000
编码
项目经理:(PM project manager)
特点:
姓名
年龄
部门
薪水
奖金
行为:
管理
*/
class employee
{
String name;
int age;
String department;
int wage;
void employee(String name,int age,String department,int wage)
{
this.name=name;
this.age=age;
this.department=department;
this.wage=wage;
}
}
class programer extends employee
{
programer(String name,int age,String department,int wage)
{
super(name,age,department,wage);
}
programer(){}
void program()
{
System.out.println("认真编程");
}
void show()
{
System.out.println("姓名"+name+",年龄"+age+",部门"+department+",薪水"+wage);
}
}
class PM extends employee
{
int bonus;
PM(String name,int age,String department,int wage,int bonus)
{
super(name,age,department,wage);
this.bonus=bonus;
}
PM(){}
void show()
{
System.out.println("姓名"+name+",年龄"+age+",部门"+department+",薪水"+wage+",奖金"+bonus);
}
void manage()
{
System.out.println("管理程序员");
}
}
class fuxieyingyong
{
public static void main(String[] args)
{
programer p=new programer("刘强",20,"市场部",3000);
PM m=new PM("李华",30,"市场部",5000,10000);
p.show();
p.program();
m.show();
m.manage();
}
}
6 个解决方案
#1
employee 的构造方法写错了,没有void
建议类名首字母大写
建议类名首字母大写
#2
去掉void 还是会错,怎么办呢?,应该和那个大小写没什么关系吧
#3
把空的构造函数去掉
PM(){}
programer(){}
PM(){}
programer(){}
#4
去掉void,同时给employee加上一个空构造器,也就是employee(){}
#5
去掉void后,你会发现programer(){}报错了。
这是因为一个构造器,总会在第一行代码执行super(...)这样的代码,只不过有的是隐式调用,有的是显式调用,隐式调用默认调用父类的空构造器,也就是你的programer(){}会调用employee的空构造器,而你的employee类没有空构造器,当然就报错啦
这是因为一个构造器,总会在第一行代码执行super(...)这样的代码,只不过有的是隐式调用,有的是显式调用,隐式调用默认调用父类的空构造器,也就是你的programer(){}会调用employee的空构造器,而你的employee类没有空构造器,当然就报错啦
#6
哥们,你结贴太快了,我上面这段绝对值三十分
#1
employee 的构造方法写错了,没有void
建议类名首字母大写
建议类名首字母大写
#2
去掉void 还是会错,怎么办呢?,应该和那个大小写没什么关系吧
#3
把空的构造函数去掉
PM(){}
programer(){}
PM(){}
programer(){}
#4
去掉void,同时给employee加上一个空构造器,也就是employee(){}
#5
去掉void后,你会发现programer(){}报错了。
这是因为一个构造器,总会在第一行代码执行super(...)这样的代码,只不过有的是隐式调用,有的是显式调用,隐式调用默认调用父类的空构造器,也就是你的programer(){}会调用employee的空构造器,而你的employee类没有空构造器,当然就报错啦
这是因为一个构造器,总会在第一行代码执行super(...)这样的代码,只不过有的是隐式调用,有的是显式调用,隐式调用默认调用父类的空构造器,也就是你的programer(){}会调用employee的空构造器,而你的employee类没有空构造器,当然就报错啦
#6
哥们,你结贴太快了,我上面这段绝对值三十分