一个java程序写一个图书类怎么写?我写的哪里错了?为什么总册数不对?
.一个图书类,其数据成员为书名,编号(利用静态变量实现自动编号)、书价,并拥有静态数据成员册数,记录图书的总册数,在构造方法中利用此静态变量为对象的编号赋值,在主方法中定...
.一个图书类,其数据成员为书名,编号(利用静态变量实现自
动编号)、书价,并拥有静态数据成员册数,记录图书的总册数,
在构造方法中利用此静态变量为对象的编号赋值,在主方法中定
义对象数组,并求出总册数!
我写的:
class Book2
{ private static int Allbook=1;
private String name;
private String number;
private float pay;
private static int book;
public Book2()
{
this.setNumber(Integer.toString(Allbook));
Allbook++;
}
public int getAllbook() {
return Allbook;
}
public void setAllbook(int allbook) {
Allbook = allbook;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public float getPay() {
return pay;
}
public void setPay(float pay) {
this.pay = pay;
}
public int getBook() {
return book;
}
public void setBook(int book) {
this.book = book;
}
}
public class Book1
{
public static void main(String[] args) {
Book2 b[]=new Book2[10];
Book2 a=new Book2();
System.out.println(a.getAllbook());
}
} 展开
动编号)、书价,并拥有静态数据成员册数,记录图书的总册数,
在构造方法中利用此静态变量为对象的编号赋值,在主方法中定
义对象数组,并求出总册数!
我写的:
class Book2
{ private static int Allbook=1;
private String name;
private String number;
private float pay;
private static int book;
public Book2()
{
this.setNumber(Integer.toString(Allbook));
Allbook++;
}
public int getAllbook() {
return Allbook;
}
public void setAllbook(int allbook) {
Allbook = allbook;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
public float getPay() {
return pay;
}
public void setPay(float pay) {
this.pay = pay;
}
public int getBook() {
return book;
}
public void setBook(int book) {
this.book = book;
}
}
public class Book1
{
public static void main(String[] args) {
Book2 b[]=new Book2[10];
Book2 a=new Book2();
System.out.println(a.getAllbook());
}
} 展开
2个回答
展开全部
打印结果是1吧?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
private static int Allbook=1;初始值应该是0吧?你输出的多少?
更多追问追答
追问
我就按照我上面写的输出是2,但是定义了一个10的数组,又定义了一个对象,怎么是2呢?
追答
你定义了一个唱10的数组,你的定义只能说明数组里存储Book类型的数据,不能说明你给这个数组的每个元素都赋值了,你可以循环输出一下数组,看又没有值,应该会出现空指针异常的,还有你的Allbook初始值是1,通过Book2 a=new Book2();使Allbook加1,输出才是2
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询