我下面写一个简单程序。
写这个程序,首先第一步创建一个骑士和魔法师
class Knight
{
private String name;//角色名字
private int level;//角色等级
private int blood;//角色血量
//由于上面的都被封装了,所以在公共类中需要通过setXxx()方法和getXxx()方法来获取或设置Knight中的值。
public void fight()
{
System.out.println(" 挥剑攻击 ");
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name=name;
}
public int getLevel()
{
return level;
}
public void setLevel(int level)
{
this.level=level;
}
public int getBlood()
{
return blood;
}
public void setBlood(int blood)
{
this.blood=blood;
}
}
class Magic
{
private String name;//角色名字
private int level;//角色等级
private int blood;//角色血量
public void fight()
{
System.out.println(" 魔法攻击 ");
}
public void cure()
{
System.out.println(" 魔法治疗 ");
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name=name;
}
public int getLevel()
{
return level;
}
public void setLevel(int level)
{
this.level=level;
}
public int getBlood()
{
return blood;
}
public void setBlood(int blood)
{
this.blood=blood;
}
}
public class TPerson
{
public static void main(String[] args)
{
Knight k=new Knight();
k.setName("李四");
k.setLevel(1);
k.setBlood(100);
k.fight();
System.out.printf("%s,%d,%d \n",k.getName(),k.getLevel(),k.getBlood());
Magic m=new Magic();
m.setName("张三");
m.setLevel(1);
m.setBlood(100);
m.fight();
m.cure();
System.out.printf("%s,%d,%d \n",m.getName(),m.getLevel(),m.getBlood());
}
}
**以上程序较为繁琐,下面咱们进入主题,类的继承:**
```java
class D
{
private String name;
private int level;
private int blood;
public void setName(String name)
{
this.name=name;
}
public String getName()
{
return name;
}
public void setLevel(int level)
{
this.level=level;
}
public int getLevel()
{
return level;
}
public void setBlood(int blood)
{
this.blood=blood;
}
public int getBlood()
{
return blood;
}
}
class Knight extends D //Knight继承D类
{
public void fight()
{
System.out.println(" 挥剑攻击 ");
}
}
class Magic extends D //Magic继承D类
{
public void fight()
{
System.out.println(" 魔法攻击 ");
}
public void cure()
{
System.out.println(" 魔法治疗 ");
}
}
public class TPerson1
{
public static void main(String[] args)
{
Knight k=new Knight();
k.setName("李四");
k.setLevel(1);
k.setBlood(100);
k.fight();
System.out.printf("%s,%d,%d \n",k.getName(),k.getLevel(),k.getBlood());
Magic m=new Magic();
m.setName("张三");
m.setLevel(1);
m.setBlood(100);
m.fight();
m.cure();
System.out.printf("%s,%d,%d \n",m.getName(),m.getLevel(),m.getBlood());
}
}
注意:在 java 中只允许单继承,而不允许多重继承,也就是说一个子类只能有一个父类,但是 java 中却允许实现多个接口。(后面会讲到接口,接口实现可以实现多个接口)