从Abstract到可用的整数?

时间:2016-03-25 04:40:58

标签: c# delegates abstract-class

我试图按照书中的一个例子,然后想按一个按钮放入值。这必须是一个简单的解决方案,只是试图找出基础知识。

 abstract class Spaceship
{
    abstract public void LaserHit();
}
class CombatShip : Spaceship
{
    public override void LaserHit(int L)
    {
       int L = 10;
    }
}
public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }

    private void button_Click(object sender, RoutedEventArgs e)
    {
        CombatShip goliath = new CombatShip();
        int L = goliath.LaserHit() - 10;


    }
}

1 个答案:

答案 0 :(得分:2)

注意LaserHit方法的方法签名。返回类型为void - >意思是这个方法不会返回任何东西。您正在尝试分配LaserHit返回的值,但它的目的不是返回任何内容。

将抽象类和具体类中的方法签名更改为int,您将获得所需的内容。

abstract class Spaceship
{
    abstract public int LaserHit();
}
class CombatShip : Spaceship
{
    public override int LaserHit()
    {
       int L = 10;
       return L;
    }
}