summaryrefslogtreecommitdiff
path: root/python/abstractmethod.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/abstractmethod.py')
-rw-r--r--python/abstractmethod.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/python/abstractmethod.py b/python/abstractmethod.py
new file mode 100644
index 0000000..9c2f075
--- /dev/null
+++ b/python/abstractmethod.py
@@ -0,0 +1,36 @@
+from abc import ABC, abstractmethod
+
+class A(ABC):
+ def __init__(self):
+ pass
+
+ def method(self):
+ print("1")
+
+ @abstractmethod
+ def x(self):
+ pass
+
+class B(A):
+ def __init__(self):
+ pass
+
+ def method2(self):
+ print("2")
+
+class C(B):
+ def __init__(self):
+ pass
+
+ def method(self):
+ print("X")
+
+ def method2(self):
+ print("Y")
+
+ def x(self):
+ pass
+
+c = C()
+c.method()
+c.method2()