C# inheritance: implements + extends
Solution 1
C# doesn't support multiple inheritance. You can derive from one class and use interfaces for your other needs.
Syntax:
class MyClass : Foo, IFoo, IBar
{
}
interface IFoo
{
}
interface IBar
{
}
class Foo
{
}
Solution 2
Try this one:
using System;
public interface A
{
void DoSmth();
}
public class B
{
public void OpA() { }
public void OpB() { }
}
public class ClassC : B, A
{
public void DoSmth(){}
}
Remember, you cannot inherit from two classes at specific class level, it could be only one class and any number of interfaces.
Solution 3
class Base
{
}
interface I1
{
}
interface I2
{
}
class Derived : Base, I1, I2
{
}
static void Main(String[] args)
{
Derived d = new Derived();
}
Solution 4
It should look like this:
public class MyClass: ClassB, InterfaceA{
}
ClassB is the base class.
InterfaceA is an interface.
You can only extend one base class, but you can implement many interfaces.
NewProger
I'm trying to learn several programming languages. Mostly C# and PHP, I'm no pro, so I may sometimes ask silly things, but please bear with me :) PS - also english is not my native language.
Updated on July 29, 2022Comments
-
NewProger almost 2 years
Is it possible to do something like that in
C#
:public class MyClass implements ClassA extends ClassB { }
I need this because: I have two classes one of which is an
Interface
which I will be implementing in my class, but I would like to also use methods from another class, that does some stuff that I would like to use in my class.