我有3个名为maths,alphabets和main的课程。 Maths类包含Add函数,alphabet类包含与Maths类相同的函数。但第三类用于调用函数,该函数用于调用上述类中定义的上述函数。
它将如何运作?
答案 0 :(得分:2)
如果函数是静态的,你必须明确告诉它们属于哪个类 - 否则编译器将无法解析:
Maths.Add();
如果它们不是静态的,编译器将根据对象类型确定这一点:
Maths maths = new Maths();
maths.Add(); // the necessary class and function will be resolved automatically
答案 1 :(得分:1)
这是你的意思吗?
public class Maths
{
public Maths() { }
public Double Add(Double numberOne, Double numberTwo)
{
return numberOne + numberTwo;
}
}
public class Alphabet
{
public Alaphabet() { }
public String Add(Char characterOne, Char characterTwo)
{
return characterOne.ToString() + characterTwo.ToString();
}
}
public void Main()
{
Alphabet alaphatbet = new Alphabet();
String alphaAdd = alphabet.Add('a', 'b'); // Gives "ab"
Maths maths = new Maths();
Double mathsAdd = maths.Add(10, 5); // Gives 15
}
答案 2 :(得分:0)
通过使用定义Add函数的接口,并使Math和alphabets实现该接口。
答案 3 :(得分:0)
C#程序不包含“函数”,而是包含附加到类的方法。因此,您可以致电Math.Add
或Alphabet.Add
。由于这个原因,在C#中不存在冲突的函数名称。冲突的类名由名称空间解析。