{"id":7458,"date":"2025-08-07T13:07:25","date_gmt":"2025-08-07T07:37:25","guid":{"rendered":"https:\/\/www.sapewmhelp.com\/?question=types-of-inheritance-in-sap-ooabap"},"modified":"2025-08-07T13:07:25","modified_gmt":"2025-08-07T07:37:25","slug":"types-of-inheritance-in-sap-ooabap","status":"publish","type":"question","link":"https:\/\/www.sapewmhelp.com\/?question=types-of-inheritance-in-sap-ooabap","title":{"rendered":"Types of Inheritance in SAP OOABAP"},"content":{"rendered":"<h3 data-start=\"393\" data-end=\"444\">1. <strong>Single Inheritance<\/strong> <em>(Supported in ABAP)<\/em><\/h3>\n<ul>\n<li><strong>Definition:<\/strong> One subclass inherits from one superclass.<\/li>\n<li><strong>Use:<\/strong> Most common form of inheritance.<\/li>\n<\/ul>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code><!--StartFragment --><span><span>CLASS\u00a0<\/span>parent_class\u00a0<span>DEFINITION<\/span><span>.<\/span><br \/>\u00a0\u00a0<span>PUBLIC\u00a0<\/span><span>SECTION<\/span><span>.<\/span><br \/>\u00a0\u00a0\u00a0\u00a0<span>METHODS<\/span><span>:\u00a0<\/span>display<span>.<\/span><br \/><span>ENDCLASS<\/span><span>.<\/span><br \/><br \/><span>CLASS\u00a0<\/span>parent_class\u00a0<span>IMPLEMENTATION<\/span><span>.<\/span><br \/>\u00a0\u00a0<span>METHOD\u00a0<\/span>display<span>.<\/span><br \/>\u00a0\u00a0\u00a0\u00a0<span>WRITE<\/span><span>:\u00a0<\/span><span>'Parent\u00a0class\u00a0method'<\/span><span>.<\/span><br \/>\u00a0\u00a0<span>ENDMETHOD<\/span><span>.<\/span><br \/><span>ENDCLASS<\/span><span>.<\/span><br \/><br \/><span>CLASS\u00a0<\/span>child_class\u00a0<span>DEFINITION\u00a0<\/span><span>INHERITING\u00a0<\/span><span>FROM\u00a0<\/span>parent_class<span>.<\/span><br \/><span>ENDCLASS<\/span><span>.<\/span><br \/><br \/><span>CLASS\u00a0<\/span>child_class\u00a0<span>IMPLEMENTATION<\/span><span>.<\/span><br \/><span>ENDCLASS<\/span><span>.<\/span><br \/><\/span> <\/code><\/pre>\n<h3 data-start=\"972\" data-end=\"1027\">2. <strong>Multilevel Inheritance<\/strong> <em>(Supported in ABAP)<\/em><\/h3>\n<ul>\n<li><strong>Definition:<\/strong> A class inherits from a child class, which itself inherited from a parent class.<\/li>\n<li><strong>Hierarchy:<\/strong> Grandparent \u2192 Parent \u2192 Child<\/li>\n<\/ul>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code><!--StartFragment --><span><span>CLASS\u00a0<\/span>grandparent\u00a0<span>DEFINITION<\/span><span>.<\/span><br \/>\u00a0\u00a0<span>PUBLIC\u00a0<\/span><span>SECTION<\/span><span>.<\/span><br \/>\u00a0\u00a0\u00a0\u00a0<span>METHODS<\/span><span>:\u00a0<\/span>method_gp<span>.<\/span><br \/><span>ENDCLASS<\/span><span>.<\/span><br \/><br \/><span>CLASS\u00a0<\/span>parent\u00a0<span>DEFINITION\u00a0<\/span><span>INHERITING\u00a0<\/span><span>FROM\u00a0<\/span>grandparent<span>.<\/span><br \/>\u00a0\u00a0<span>PUBLIC\u00a0<\/span><span>SECTION<\/span><span>.<\/span><br \/>\u00a0\u00a0\u00a0\u00a0<span>METHODS<\/span><span>:\u00a0<\/span>method_p<span>.<\/span><br \/><span>ENDCLASS<\/span><span>.<\/span><br \/><br \/><span>CLASS\u00a0<\/span>child\u00a0<span>DEFINITION\u00a0<\/span><span>INHERITING\u00a0<\/span><span>FROM\u00a0<\/span>parent<span>.<\/span><br \/>\u00a0\u00a0<span>PUBLIC\u00a0<\/span><span>SECTION<\/span><span>.<\/span><br \/>\u00a0\u00a0\u00a0\u00a0<span>METHODS<\/span><span>:\u00a0<\/span>method_c<span>.<\/span><br \/><span>ENDCLASS<\/span><span>.<\/span><\/span> <\/code><\/pre>\n<h3 data-start=\"1494\" data-end=\"1566\">3. <strong>Hierarchical Inheritance<\/strong> <em>(Supported via multilevel in ABAP)<\/em><\/h3>\n<ul>\n<li><strong>Definition:<\/strong> Similar to multilevel, but describes a tree of inheritance.<\/li>\n<li>ABAP supports this by chaining multiple single inheritances.<\/li>\n<\/ul>\n<h3 data-start=\"1715\" data-end=\"1783\">4. <strong>Multiple Inheritance<\/strong> <em>(\u274c Not Supported Directly in ABAP)<\/em><\/h3>\n<ul>\n<li><strong>Definition:<\/strong> A class inherits from more than one superclass.<\/li>\n<li><strong>ABAP Limitation:<\/strong> ABAP allows a class to inherit from <strong>only one class<\/strong> directly.<\/li>\n<li><strong>Alternative:<\/strong> Use <strong>interfaces<\/strong> to simulate multiple inheritance.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","question-category":[174],"question_tags":[178,264,168,177],"class_list":["post-7458","question","type-question","status-publish","hentry","question-category-ooabap","question_tags-abap","question_tags-object-oriented","question_tags-ooabap","question_tags-sap"],"_links":{"self":[{"href":"https:\/\/www.sapewmhelp.com\/index.php?rest_route=\/wp\/v2\/question\/7458","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sapewmhelp.com\/index.php?rest_route=\/wp\/v2\/question"}],"about":[{"href":"https:\/\/www.sapewmhelp.com\/index.php?rest_route=\/wp\/v2\/types\/question"}],"author":[{"embeddable":true,"href":"https:\/\/www.sapewmhelp.com\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sapewmhelp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=7458"}],"wp:attachment":[{"href":"https:\/\/www.sapewmhelp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=7458"}],"wp:term":[{"taxonomy":"question-category","embeddable":true,"href":"https:\/\/www.sapewmhelp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fquestion-category&post=7458"},{"taxonomy":"question_tags","embeddable":true,"href":"https:\/\/www.sapewmhelp.com\/index.php?rest_route=%2Fwp%2Fv2%2Fquestion_tags&post=7458"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}