【发布时间】:2019-09-28 18:34:17
【问题描述】:
class Book {
int op,mp;
String name,auther;
void Setdata(String n,String au)
{
name=n;
auther=au;
}
void Display()
{
System.out.println("Name:"+name);
System.out.println("Auther:"+auther);
System.out.println("Ocford price: "+op);
System.out.println("MC price: "+mp);
}
}
class Oxford extends Book
{
void price(int p)
{
super.op=p;
}
}
class Mc extends Book
{
void price(int p)
{
super.mp=p;
}
}
public class Sai
{
public static void main(String args[])
{
Oxford o=new Oxford();
Mc m=new Mc();
Book b=new Book();
b.Setdata("Java","Robert");
o.price(300);
m.price(400);
b.Display();
}
}
我的输出:
- 名称:Java
- 作者:罗伯特
- 牛津价格:0
- Mc 价格:0
预期输出:
- 名称:Java
- 作者:罗伯特
- 牛津价格:300
- mc价格:400
为什么两个类的对象 (Oxford,Mc 按书类扩展) 不能为书的类变量赋值。 打印预期输出的解决方案是什么。
【问题讨论】:
标签: java object inheritance