为游戏棒球和板球创建两个具体的BatAndBallGames类。每个具体类应该有2个新的数据成员和2个新的成员函数.2个类中的数据成员和成员函数不应该相同。
import java.util.*;
abstract class BatAndBallGames
{
abstract void display();
abstract void rulesSummary();
int PlayersPerTeam;
int LengthOfGame;
}
concrete class Baseball extends BatAndBallGames
{
Baseball(int a,int b)
{
PlayersPerTeam=a;
LengthOfGame=b;
}
void rulesSummary()
{
System.out.println("baseball rules");
}
void display()
{
System.out.println("In baseball PlayersPerTeam=" +PlayersPerTeam + " LengthOfGame=" +LengthOfGame);
}
}
concrete class Cricket extends BatAndBallGames
{
Cricket(int a,int b)
{
PlayersPerTeam = a;
LengthOfGame = b;
}
void rulesSummary()
{
System.out.println("cricket rules");
}
void display()
{
System.out.println("In cricket PlayersPerTeam=" +PlayersPerTeam + " LengthOfGame=" +LengthOfGame);
}
}
public class BatandBall
{
public static void main(String args[])
{
System.out.println("Airtel Champions League");
BatAndBallGames obj = new Baseball(10,3);
obj.display();
BatAndBallGames obj1 = new Cricket(11,8);
obj1.display();
}
}
答案 0 :(得分:0)
我们不能具体作为关键字或标识符来定义java中的类。所以错误即将来临。 你可以尝试这样,它正在运作
import java.util.*;
abstract class BatAndBallGames
{
abstract void display();
abstract void rulesSummary();
int PlayersPerTeam;
int LengthOfGame;
}
class Baseball extends BatAndBallGames
{
Baseball(int a,int b)
{
PlayersPerTeam=a;
LengthOfGame=b;
}
void rulesSummary()
{
System.out.println("baseball rules");
}
void display()
{
System.out.println("In baseball PlayersPerTeam=" +PlayersPerTeam + " LengthOfGame=" +LengthOfGame);
}
}
class Cricket extends BatAndBallGames
{
Cricket(int a,int b)
{
PlayersPerTeam = a;
LengthOfGame = b;
}
void rulesSummary()
{
System.out.println("cricket rules");
}
void display()
{
System.out.println("In cricket PlayersPerTeam=" +PlayersPerTeam + " LengthOfGame=" +LengthOfGame);
}
}
class BatandBall
{
public static void main(String args[])
{
System.out.println("Airtel Champions League");
BatAndBallGames obj = new Baseball(10,3);
obj.display();
BatAndBallGames obj1 = new Cricket(11,8);
obj1.display();
}
}
答案 1 :(得分:0)
当人们谈论具体类时,他们只是在谈论可以实例化的类(即你可以创建该类的对象)。这是一个你需要了解的概念。
java中没有concrete
个关键字。默认情况下,类是具体的。这与abstract class
形成对比,后者无法实例化。
abstract
关键字,则为摘要。在上面的(我的猜测,家庭作业)示例中,您有一个抽象类BatAndBallGame
。 Baseball
和Cricket
都是BatAndBallGame的类型,因此从它们扩展。我们之所以这样做,是因为所有蝙蝠和球类游戏共享某些属性。但是,拥有BatAndBallGame
类型的对象是没有意义的 - 它不是一个可以玩的真实游戏,就像板球和棒球一样。
所以你有:
abstract class BatAndBallGame {}
class Cricket extends BatAndBallGame {}
class Baseball extends BatAndBallGame {}
答案 2 :(得分:0)
在提供的代码中使用' concrete'因为修饰语是不合适的。正如 abhishek-rana 已经提到的,您可以删除它,它应该解决问题。如果你正在使用' concrete'作为课程的访问修饰符,您可以转到official tutorial了解更多信息。