{"id":25526686,"date":"2022-06-03T19:29:46","date_gmt":"2022-06-03T13:59:46","guid":{"rendered":"https:\/\/entri.app\/blog\/?p=25526686"},"modified":"2023-09-06T16:08:25","modified_gmt":"2023-09-06T10:38:25","slug":"what-is-the-difference-between-the-final-method-and-abstract-method","status":"publish","type":"post","link":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/","title":{"rendered":"What is the difference between the final method and abstract method"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_79_2 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<label for=\"ez-toc-cssicon-toggle-item-69d37facbf829\" class=\"ez-toc-cssicon-toggle-label\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/label><input type=\"checkbox\"  id=\"ez-toc-cssicon-toggle-item-69d37facbf829\"  aria-label=\"Toggle\" \/><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#How_do_you_call_an_abstract_method\" >How do you call an abstract method?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#Abstract_Method_in_Java\" >Abstract Method in Java<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#Abstract_Method\" >Abstract Method<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#Example_of_Abstract_Method_in_Java\" >Example of Abstract Method in Java<\/a><\/li><\/ul><\/nav><\/div>\n<div>Difference between abstract method and final method in Java. The\u00a0abstract method\u00a0is incomplete while the\u00a0final method\u00a0is regarded as complete. The only way to use an\u00a0abstract method\u00a0is by overriding it, but you cannot override a\u00a0final method in Java.<\/div>\n<p>Subsequently, one may also ask, what is the difference between abstract and final in Java?<\/p>\n<p>For classes, final\u00a0is used to prevent inheritance whereas\u00a0abstract\u00a0classes depends upon their child classes for complete implementation. In cases of methods,\u00a0final\u00a0is used to prevent overriding whereas\u00a0abstract\u00a0methods needs to be overridden in sub-classes.<\/p>\n<div id=\"7c1628b9-9bb2-42b9-95ba-fd24f7f16555\" class=\"_ap_apex_ad\" style=\"clear: both; text-align: center; margin: 10px auto;\" data-section=\"7c1628b9-9bb2-42b9-95ba-fd24f7f16555\" data-xpath=\".answer &gt; p:eq(1)\" data-section-id=\"\" data-ap-network=\"adpTags\" data-render-time=\"1654182516545\" data-refresh-time=\"1654182546566\" data-timeout=\"467\">\n<div id=\"ADP_42781_336X280_7c1628b9-9bb2-42b9-95ba-fd24f7f16555\" data-google-query-id=\"CKKF9ZiGj_gCFRbUUQodajoHLA\">\n<h4 id=\"google_ads_iframe_\/103512698,21696859974\/22631576636_0__container__\"><strong><a class=\"in-cell-link\" href=\"https:\/\/entri.app\/course\/python-programming-course\/\" target=\"_blank\" rel=\"noopener\">Unlock Your Coding Potential with Our Programming Courses \u2013 Enroll Today<\/a><\/strong><\/h4>\n<\/div>\n<\/div>\n<p>Additionally, what is the difference between abstract method and concrete method?\u00a0Abstract methods\u00a0are those which need to be implemented in subclass\/child class.\u00a0Abstract methods\u00a0are only defined in superclass\/parent class(Abstract\u00a0class) but with no body. A\u00a0method\u00a0which is not\u00a0abstract\u00a0i.e. if a\u00a0methods\u00a0definition is given\u00a0in the\u00a0same class its declared is called\u00a0concrete.<\/p>\n<p>Similarly one may ask, can we have an abstract &amp; final method?<\/p>\n<p>Yes, there may be &#8220;final&#8221;\u00a0methods\u00a0in &#8220;abstract&#8221; class. But, any &#8220;abstract&#8221;\u00a0method\u00a0in the class\u00a0can&#8217;t be declared\u00a0final. It\u00a0will\u00a0give &#8220;illegal combination of modifiers:\u00a0abstract\u00a0and\u00a0final&#8221; error. Here is the working example of the implementation.<\/p>\n<p><a href=\"https:\/\/entri.sng.link\/Bcofz\/uu8c\/w409\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-25520910 size-full\" src=\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Square.png\" alt=\"Python and Machine Learning Square\" width=\"345\" height=\"345\" srcset=\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Square.png 345w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Square-300x300.png 300w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Square-150x150.png 150w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Square-24x24.png 24w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Square-48x48.png 48w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Square-96x96.png 96w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Square-75x75.png 75w\" sizes=\"auto, (max-width: 345px) 100vw, 345px\" \/><\/a><\/p>\n<h2><span class=\"ez-toc-section\" id=\"How_do_you_call_an_abstract_method\"><\/span><strong>How do you call an abstract method?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>You simply need to create a subclass which extends from the abstract class. Then using the instance of this subclass you can use the defined methods of the abstract class.You can call abstract methods of an abstract class without problems.<\/p>\n<h4 style=\"text-align: center;\"><strong><a href=\"https:\/\/entri.app\/course\/data-science-and-machine-learning-course\/\" target=\"_blank\" rel=\"noopener\">Learn Coding in your Language! Enroll Here!<\/a><\/strong><\/h4>\n<h2 class=\"h1\"><span class=\"ez-toc-section\" id=\"Abstract_Method_in_Java\"><\/span><strong>Abstract Method in Java<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>In object oriented programming, abstraction is defined as hiding the unnecessary details (implementation) from the user and to focus on essential details (functionality). It increases the efficiency and thus reduces complexity.<\/p>\n<p>In Java, abstraction can be achieved using abstract classes and methods. In this blog,\u00a0 we will learn about abstract methods and its use in Java.<\/p>\n<h2 class=\"h2\"><span class=\"ez-toc-section\" id=\"Abstract_Method\"><\/span><strong>Abstract Method<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>A method declared using the\u00a0<strong>abstract<\/strong> keyword within an abstract class and does not have a definition (implementation) is called an abstract method. <span style=\"text-align: center;\">When we need just the method declaration in a super class, it can be achieved by declaring the methods as abstracts.<\/span><\/p>\n<p>Abstract method is also called subclass responsibility as it doesn&#8217;t have the implementation in the super class. Therefore a subclass must override it to provide the method definition.<\/p>\n<h3 class=\"h3\">Syntax for abstract method:<\/h3>\n<div class=\"codeblock\">\n<div class=\"dp-highlighter\">\n<div class=\"bar\">\n<div class=\"tools\">\n<div class=\"adp_interactive_ad\"><\/div>\n<\/div>\n<\/div>\n<ol class=\"dp-j\" start=\"1\">\n<li class=\"alt\"><span class=\"keyword\">abstract<\/span>\u00a0return_type\u00a0method_name(\u00a0[\u00a0argument-list\u00a0]\u00a0);<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<p>Here, the abstract method doesn&#8217;t have a method body. It may have zero or more arguments.<\/p>\n<h4 id=\"google_ads_iframe_\/103512698,21696859974\/22631576636_0__container__\" style=\"text-align: center;\"><strong><a href=\"https:\/\/entri.app\/course\/full-stack-developer-course\/\" target=\"_blank\" rel=\"noopener\">\u00a0Learn to code from industry experts! Get a free Demo here!<\/a><\/strong><\/h4>\n<h3 class=\"h3\">Points to Remember<\/h3>\n<p>Following points are the important rules for abstract method in Java:<\/p>\n<ul class=\"points\">\n<li>An abstract method do not have a body (implementation), they just have a method signature (declaration). The class which extends the abstract class implements the abstract methods.<\/li>\n<li>If a non-abstract (concrete) class extends an abstract class, then the class must implement all the abstract methods of that abstract class. If not the concrete class has to be declared as abstract as well.<\/li>\n<li>As the abstract methods just have the signature, it needs to have semicolon (;) at the end.<\/li>\n<li>Following are various\u00a0<strong>illegal combinations<\/strong>of other modifiers for methods with respect to\u00a0<em>abstract<\/em>\u00a0modifier:\n<ul class=\"points\">\n<li>final<\/li>\n<li>abstract native<\/li>\n<li>abstract synchronized<\/li>\n<li>abstract static<\/li>\n<li>abstract private<\/li>\n<li>abstract strictfp<\/li>\n<\/ul>\n<\/li>\n<li>If a class contains abstract method it needs to be abstract and vice versa is not true.<\/li>\n<\/ul>\n<h2 class=\"h2\"><span class=\"ez-toc-section\" id=\"Example_of_Abstract_Method_in_Java\"><\/span><strong>Example of Abstract Method in Java<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3 class=\"h3\"><strong>Example 1:<\/strong><\/h3>\n<p>In the following example, we will learn how abstraction is achieved using abstract classes and abstract methods.<\/p>\n<p><strong>AbstractMethodEx1.java<\/strong><\/p>\n<div class=\"codeblock\">\n<div class=\"dp-highlighter\">\n<ol class=\"dp-j\" start=\"1\">\n<li class=\"alt\"><span class=\"comment\">\/\/\u00a0abstract\u00a0class<\/span><\/li>\n<li class=\"\"><span class=\"keyword\">abstract<\/span>\u00a0<span class=\"keyword\">class<\/span>\u00a0Multiply\u00a0{<\/li>\n<li class=\"alt\"><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0abstract\u00a0methods\u00a0<\/span><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0sub\u00a0class\u00a0must\u00a0implement\u00a0these\u00a0methods<\/span><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">abstract<\/span>\u00a0<span class=\"keyword\">int<\/span>\u00a0MultiplyTwo\u00a0(<span class=\"keyword\">int<\/span>\u00a0n1,\u00a0<span class=\"keyword\">int<\/span>\u00a0n2);<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">abstract<\/span>\u00a0<span class=\"keyword\">int<\/span>\u00a0MultiplyThree\u00a0(<span class=\"keyword\">int<\/span>\u00a0n1,\u00a0<span class=\"keyword\">int<\/span>\u00a0n2,\u00a0<span class=\"keyword\">int<\/span>\u00a0n3);<\/li>\n<li class=\"\"><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0regular\u00a0method\u00a0with\u00a0body<\/span><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">void<\/span>\u00a0show()\u00a0{<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0\u00a0System.out.println\u00a0(<span class=\"string\">&#8220;Method\u00a0of\u00a0abstract\u00a0class\u00a0Multiply&#8221;<\/span>);<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0}<\/li>\n<li class=\"alt\">}<\/li>\n<li class=\"\"><span class=\"comment\">\/\/\u00a0Regular\u00a0class\u00a0extends\u00a0abstract\u00a0class<\/span><\/li>\n<li class=\"alt\"><span class=\"keyword\">class<\/span>\u00a0AbstractMethodEx1\u00a0<span class=\"keyword\">extends<\/span>\u00a0Multiply\u00a0{<\/li>\n<li class=\"\"><\/li>\n<li class=\"alt\">\u00a0\u00a0<span class=\"comment\">\/\/\u00a0if\u00a0the\u00a0abstract\u00a0methods\u00a0are\u00a0not\u00a0implemented,\u00a0compiler\u00a0will\u00a0give\u00a0an\u00a0error<\/span><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">int<\/span>\u00a0MultiplyTwo\u00a0(<span class=\"keyword\">int<\/span>\u00a0num1,\u00a0<span class=\"keyword\">int<\/span>\u00a0num2)\u00a0{<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0\u00a0<span class=\"keyword\">return<\/span>\u00a0num1\u00a0*\u00a0num2;<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0}<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">int<\/span>\u00a0MultiplyThree\u00a0(<span class=\"keyword\">int<\/span>\u00a0num1,\u00a0<span class=\"keyword\">int<\/span>\u00a0num2,\u00a0<span class=\"keyword\">int<\/span>\u00a0num3)\u00a0{<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0\u00a0<span class=\"keyword\">return<\/span>\u00a0num1\u00a0*\u00a0num2\u00a0*\u00a0num3;<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0}<\/li>\n<li class=\"\"><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0main\u00a0method<\/span><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">static<\/span>\u00a0<span class=\"keyword\">void<\/span>\u00a0main\u00a0(String\u00a0args[])\u00a0{<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0\u00a0Multiply\u00a0obj\u00a0=\u00a0<span class=\"keyword\">new<\/span>\u00a0AbstractMethodEx1();<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0\u00a0System.out.println\u00a0(<span class=\"string\">&#8220;Multiplication\u00a0of\u00a02\u00a0numbers:\u00a0&#8220;<\/span>\u00a0+\u00a0obj.MultiplyTwo\u00a0(<span class=\"number\">10<\/span>,\u00a0<span class=\"number\">50<\/span>));<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0\u00a0System.out.println\u00a0(<span class=\"string\">&#8220;Multiplication\u00a0of\u00a03\u00a0numbers:\u00a0&#8220;<\/span>\u00a0+\u00a0obj.MultiplyThree\u00a0(<span class=\"number\">5<\/span>,\u00a0<span class=\"number\">8<\/span>,\u00a0<span class=\"number\">10<\/span>));<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0\u00a0obj.show();<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0}<\/li>\n<li class=\"\">}<\/li>\n<\/ol>\n<h4 id=\"google_ads_iframe_\/103512698,21696859974\/22631576636_0__container__\" style=\"text-align: center;\"><strong><a href=\"https:\/\/entri.app\/course\/full-stack-developer-course\/\" target=\"_blank\" rel=\"noopener\">\u00a0Learn to code from industry experts! Get a free Demo here!<\/a><\/strong><\/h4>\n<\/div>\n<\/div>\n<p><strong>Output:<\/strong><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/static.javatpoint.com\/core\/images\/abstract-method-in-java.png\" alt=\"Abstract Method in Java\" \/><\/p>\n<h3 class=\"h3\"><strong>Example 2:<\/strong><\/h3>\n<p>By default, all the methods of an interface are public and abstract. An interface cannot contain concrete methods i.e. regular methods with body.<\/p>\n<p><strong>AbstractMethodEx2.java<\/strong><\/p>\n<div class=\"codeblock\">\n<div class=\"dp-highlighter\">\n<div class=\"bar\">\n<div class=\"tools\">\n<div class=\"adp_interactive_ad\"><\/div>\n<\/div>\n<\/div>\n<ol class=\"dp-j\" start=\"1\">\n<li class=\"alt\"><span class=\"comment\">\/\/\u00a0interface<\/span><\/li>\n<li class=\"\"><span class=\"keyword\">interface<\/span>\u00a0SquareCube\u00a0{<\/li>\n<li class=\"alt\"><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0abstract\u00a0methods<\/span><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">abstract<\/span>\u00a0<span class=\"keyword\">int<\/span>\u00a0squareNum\u00a0(<span class=\"keyword\">int<\/span>\u00a0n);<\/li>\n<li class=\"\"><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0it\u00a0not\u00a0necessary\u00a0to\u00a0add\u00a0public\u00a0and\u00a0abstract\u00a0keywords<\/span><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0as\u00a0the\u00a0methods\u00a0in\u00a0interface\u00a0are\u00a0public\u00a0abstract\u00a0by\u00a0default<\/span><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"keyword\">int<\/span>\u00a0cubeNum\u00a0(<span class=\"keyword\">int<\/span>\u00a0n);<\/li>\n<li class=\"\"><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0regular\u00a0methods\u00a0are\u00a0not\u00a0allowed\u00a0in\u00a0an\u00a0interface<\/span><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0if\u00a0we\u00a0uncomment\u00a0this\u00a0method,\u00a0compiler\u00a0will\u00a0give\u00a0an\u00a0error<\/span><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0\u00a0<span class=\"comment\">\/*public\u00a0void\u00a0disp()\u00a0{<\/span><\/li>\n<li class=\"\"><span class=\"comment\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0System.out.println\u00a0(&#8220;I\u00a0will\u00a0give\u00a0error\u00a0if\u00a0u\u00a0uncomment\u00a0me&#8221;);<\/span><\/li>\n<li class=\"alt\"><span class=\"comment\">\u00a0\u00a0\u00a0\u00a0\u00a0}<\/span><\/li>\n<li class=\"\"><span class=\"comment\">\u00a0\u00a0\u00a0\u00a0*\/<\/span><\/li>\n<li class=\"alt\">}<\/li>\n<li class=\"\"><\/li>\n<li class=\"alt\"><span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">class<\/span>\u00a0AbstractMethodEx2\u00a0<span class=\"keyword\">implements<\/span>\u00a0SquareCube\u00a0{<\/li>\n<li class=\"\"><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0defining\u00a0the\u00a0abstract\u00a0methods\u00a0of\u00a0interface<\/span><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">int<\/span>\u00a0squareNum\u00a0(<span class=\"keyword\">int<\/span>\u00a0num)\u00a0{<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"keyword\">return<\/span>\u00a0num\u00a0*\u00a0num;<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0}<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">int<\/span>\u00a0cubeNum\u00a0(<span class=\"keyword\">int<\/span>\u00a0num)\u00a0{<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"keyword\">return<\/span>\u00a0num\u00a0*\u00a0num\u00a0*\u00a0num;<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0}<\/li>\n<li class=\"\"><\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0<span class=\"comment\">\/\/\u00a0main\u00a0method<\/span><\/li>\n<li class=\"\">\u00a0\u00a0\u00a0<span class=\"keyword\">public<\/span>\u00a0<span class=\"keyword\">static<\/span>\u00a0<span class=\"keyword\">void<\/span>\u00a0main(String\u00a0args[]){<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0SquareCube\u00a0obj\u00a0=\u00a0<span class=\"keyword\">new<\/span>\u00a0AbstractMethodEx2();<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0System.out.println(<span class=\"string\">&#8220;Square\u00a0of\u00a0number\u00a0is:\u00a0&#8220;<\/span>\u00a0+\u00a0obj.squareNum\u00a0(<span class=\"number\">7<\/span>)\u00a0);<\/li>\n<li class=\"alt\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0System.out.println(<span class=\"string\">&#8220;Cube\u00a0of\u00a0number\u00a0is:\u00a0&#8220;<\/span>\u00a0+\u00a0obj.cubeNum\u00a0(<span class=\"number\">7<\/span>));<\/li>\n<li class=\"\">\u00a0\u00a0\u00a0}<\/li>\n<li class=\"alt\">}<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<p><strong>Output:<\/strong><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/static.javatpoint.com\/core\/images\/abstract-method-in-java2.png\" alt=\"Abstract Method in Java\" \/><\/p>\n<p>In this way, we have learned about abstract method and its implementation in Java.<\/p>\n<h4 style=\"text-align: center;\"><strong><a class=\"in-cell-link\" href=\"https:\/\/entri.app\/course\/python-programming-course\/\" target=\"_blank\" rel=\"noopener\">Unlock Your Coding Potential with Our Programming Courses \u2013 Enroll Today<\/a><\/strong><\/h4>\n<p><strong style=\"color: #1d1f20; font-size: 1.953em;\">Can an abstract class have a final method?<\/strong><\/p>\n<div class=\"votecell post-layout--left\">\n<div class=\"js-voting-container d-flex jc-center fd-column ai-stretch gs4 fc-black-200\" data-post-id=\"32375800\">\n<div class=\"js-vote-count flex--item d-flex fd-column ai-center fc-black-500 fs-title\" data-value=\"6\">\n<p><a href=\"https:\/\/entri.sng.link\/Bcofz\/uu8c\/w409\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-25522670 size-full\" src=\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Rectangle-1.png\" alt=\"Python and Machine Learning Rectangle\" width=\"970\" height=\"250\" srcset=\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Rectangle-1.png 970w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Rectangle-1-300x77.png 300w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Rectangle-1-768x198.png 768w, https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/04\/Python-and-Machine-Learning-Rectangle-1-750x193.png 750w\" sizes=\"auto, (max-width: 970px) 100vw, 970px\" \/><\/a><\/p>\n<\/div>\n<p>&nbsp;<\/p>\n<\/div>\n<\/div>\n<div class=\"answercell post-layout--right\">\n<div class=\"s-prose js-post-body\">\n<p>Yes, there may be &#8220;final&#8221; methods in &#8220;abstract&#8221; class. But, any &#8220;abstract&#8221; method in the class can&#8217;t be declared final. It will give\u00a0<strong>&#8220;illegal combination of modifiers: abstract and final&#8221;<\/strong>\u00a0error.<\/p>\n<pre class=\"lang-java s-code-block\"><code class=\"hljs language-java\"><span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">abstract<\/span> <span class=\"hljs-keyword\">final<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">show<\/span><span class=\"hljs-params\">()<\/span>;\r\n    illegal combination of modifiers: <span class=\"hljs-keyword\">abstract<\/span> and <span class=\"hljs-keyword\">final<\/span>\r\n<\/code><\/pre>\n<p>Here is the working example of the implementation.<\/p>\n<pre class=\"lang-java s-code-block\"><code class=\"hljs language-java\"><span class=\"hljs-keyword\">abstract<\/span> <span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title class_\">Sian<\/span>                 <span class=\"hljs-comment\">\/\/ABSTRACT CLASS<\/span>\r\n{\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">final<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">show<\/span><span class=\"hljs-params\">()<\/span>        <span class=\"hljs-comment\">\/\/ FINAL METHOD<\/span>\r\n    {\r\n         System.out.println(<span class=\"hljs-string\">\"Yes\"<\/span>);\r\n    }\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">display<\/span><span class=\"hljs-params\">()<\/span>\r\n    {\r\n         System.out.println(<span class=\"hljs-string\">\"Overriding\"<\/span>);\r\n    }\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">abstract<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">success<\/span><span class=\"hljs-params\">()<\/span>;\r\n}\r\n<span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title class_\">Ideone<\/span> <span class=\"hljs-keyword\">extends<\/span> <span class=\"hljs-title class_\">Sian<\/span>               <span class=\"hljs-comment\">\/\/INHERTING ABSTRACT CLASS<\/span>\r\n{\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">display<\/span><span class=\"hljs-params\">()<\/span>\r\n    {\r\n        System.out.println(<span class=\"hljs-string\">\"Overridden\"<\/span>);\r\n    }\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">success<\/span><span class=\"hljs-params\">()<\/span>               <span class=\"hljs-comment\">\/\/OVERRIDING THE ABSTRACT METHOD<\/span>\r\n    {\r\n        System.out.println(<span class=\"hljs-string\">\"Success overriding\"<\/span>);\r\n    }\r\n    <span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">static<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title function_\">main<\/span> <span class=\"hljs-params\">(String[] args)<\/span> <span class=\"hljs-keyword\">throws<\/span> java.lang.Exception\r\n    {\r\n        <span class=\"hljs-type\">Ideone<\/span> <span class=\"hljs-variable\">id<\/span> <span class=\"hljs-operator\">=<\/span> <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-title class_\">Ideone<\/span>();       <span class=\"hljs-comment\">\/\/OBJECT OF SUBCLASS<\/span>\r\n        id.show();                      <span class=\"hljs-comment\">\/\/CALLING FINAL METHOD<\/span>\r\n        id.display();                   <span class=\"hljs-comment\">\/\/OVERRIDDEN METHODS<\/span>\r\n        id.success();\r\n    }\r\n}\r\n<\/code><\/pre>\n<p>OUTPUT:-<\/p>\n<pre class=\"lang-java s-code-block\"><code class=\"hljs language-java\">Yes\r\nOverridden\r\nSuccess overriding<\/code><\/pre>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Difference between abstract method and final method in Java. The\u00a0abstract method\u00a0is incomplete while the\u00a0final method\u00a0is regarded as complete. The only way to use an\u00a0abstract method\u00a0is by overriding it, but you cannot override a\u00a0final method in Java. Subsequently, one may also ask, what is the difference between abstract and final in Java? For classes, final\u00a0is used [&hellip;]<\/p>\n","protected":false},"author":111,"featured_media":25526868,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[802,1903],"tags":[],"class_list":["post-25526686","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-articles","category-coding"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What is the difference between the final method and abstract method<\/title>\n<meta name=\"description\" content=\"Difference between final method and abstract method in Java is the\u00a0abstract method\u00a0is incomplete while the\u00a0final method\u00a0is regarded as complete. The only way to use an\u00a0abstract method\u00a0is by overriding it, but you cannot override a\u00a0final method in Java.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is the difference between the final method and abstract method\" \/>\n<meta property=\"og:description\" content=\"Difference between final method and abstract method in Java is the\u00a0abstract method\u00a0is incomplete while the\u00a0final method\u00a0is regarded as complete. The only way to use an\u00a0abstract method\u00a0is by overriding it, but you cannot override a\u00a0final method in Java.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/\" \/>\n<meta property=\"og:site_name\" content=\"Entri Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/entri.me\/\" \/>\n<meta property=\"article:published_time\" content=\"2022-06-03T13:59:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-09-06T10:38:25+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png\" \/>\n\t<meta property=\"og:image:width\" content=\"820\" \/>\n\t<meta property=\"og:image:height\" content=\"615\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Feeba Mahin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@entri_app\" \/>\n<meta name=\"twitter:site\" content=\"@entri_app\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Feeba Mahin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/\"},\"author\":{\"name\":\"Feeba Mahin\",\"@id\":\"https:\/\/entri.app\/blog\/#\/schema\/person\/f036dab84abae3dcc9390a1110d95d36\"},\"headline\":\"What is the difference between the final method and abstract method\",\"datePublished\":\"2022-06-03T13:59:46+00:00\",\"dateModified\":\"2023-09-06T10:38:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/\"},\"wordCount\":977,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/entri.app\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png\",\"articleSection\":[\"Articles\",\"Coding\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/\",\"url\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/\",\"name\":\"What is the difference between the final method and abstract method\",\"isPartOf\":{\"@id\":\"https:\/\/entri.app\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png\",\"datePublished\":\"2022-06-03T13:59:46+00:00\",\"dateModified\":\"2023-09-06T10:38:25+00:00\",\"description\":\"Difference between final method and abstract method in Java is the\u00a0abstract method\u00a0is incomplete while the\u00a0final method\u00a0is regarded as complete. The only way to use an\u00a0abstract method\u00a0is by overriding it, but you cannot override a\u00a0final method in Java.\",\"breadcrumb\":{\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#primaryimage\",\"url\":\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png\",\"contentUrl\":\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png\",\"width\":820,\"height\":615,\"caption\":\"What is the difference between the final method and abstract method\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/entri.app\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Coding\",\"item\":\"https:\/\/entri.app\/blog\/category\/coding\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"What is the difference between the final method and abstract method\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/entri.app\/blog\/#website\",\"url\":\"https:\/\/entri.app\/blog\/\",\"name\":\"Entri Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/entri.app\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/entri.app\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/entri.app\/blog\/#organization\",\"name\":\"Entri App\",\"url\":\"https:\/\/entri.app\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/entri.app\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2019\/10\/Entri-Logo-1.png\",\"contentUrl\":\"https:\/\/entri.app\/blog\/wp-content\/uploads\/2019\/10\/Entri-Logo-1.png\",\"width\":989,\"height\":446,\"caption\":\"Entri App\"},\"image\":{\"@id\":\"https:\/\/entri.app\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/entri.me\/\",\"https:\/\/x.com\/entri_app\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/entri.app\/blog\/#\/schema\/person\/f036dab84abae3dcc9390a1110d95d36\",\"name\":\"Feeba Mahin\",\"url\":\"https:\/\/entri.app\/blog\/author\/feeba123\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What is the difference between the final method and abstract method","description":"Difference between final method and abstract method in Java is the\u00a0abstract method\u00a0is incomplete while the\u00a0final method\u00a0is regarded as complete. The only way to use an\u00a0abstract method\u00a0is by overriding it, but you cannot override a\u00a0final method in Java.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/","og_locale":"en_US","og_type":"article","og_title":"What is the difference between the final method and abstract method","og_description":"Difference between final method and abstract method in Java is the\u00a0abstract method\u00a0is incomplete while the\u00a0final method\u00a0is regarded as complete. The only way to use an\u00a0abstract method\u00a0is by overriding it, but you cannot override a\u00a0final method in Java.","og_url":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/","og_site_name":"Entri Blog","article_publisher":"https:\/\/www.facebook.com\/entri.me\/","article_published_time":"2022-06-03T13:59:46+00:00","article_modified_time":"2023-09-06T10:38:25+00:00","og_image":[{"width":820,"height":615,"url":"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png","type":"image\/png"}],"author":"Feeba Mahin","twitter_card":"summary_large_image","twitter_creator":"@entri_app","twitter_site":"@entri_app","twitter_misc":{"Written by":"Feeba Mahin","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#article","isPartOf":{"@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/"},"author":{"name":"Feeba Mahin","@id":"https:\/\/entri.app\/blog\/#\/schema\/person\/f036dab84abae3dcc9390a1110d95d36"},"headline":"What is the difference between the final method and abstract method","datePublished":"2022-06-03T13:59:46+00:00","dateModified":"2023-09-06T10:38:25+00:00","mainEntityOfPage":{"@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/"},"wordCount":977,"commentCount":0,"publisher":{"@id":"https:\/\/entri.app\/blog\/#organization"},"image":{"@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#primaryimage"},"thumbnailUrl":"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png","articleSection":["Articles","Coding"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/","url":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/","name":"What is the difference between the final method and abstract method","isPartOf":{"@id":"https:\/\/entri.app\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#primaryimage"},"image":{"@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#primaryimage"},"thumbnailUrl":"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png","datePublished":"2022-06-03T13:59:46+00:00","dateModified":"2023-09-06T10:38:25+00:00","description":"Difference between final method and abstract method in Java is the\u00a0abstract method\u00a0is incomplete while the\u00a0final method\u00a0is regarded as complete. The only way to use an\u00a0abstract method\u00a0is by overriding it, but you cannot override a\u00a0final method in Java.","breadcrumb":{"@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#primaryimage","url":"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png","contentUrl":"https:\/\/entri.app\/blog\/wp-content\/uploads\/2022\/06\/What-is-the-difference-between-the-final-method-and-abstract-method.png","width":820,"height":615,"caption":"What is the difference between the final method and abstract method"},{"@type":"BreadcrumbList","@id":"https:\/\/entri.app\/blog\/what-is-the-difference-between-the-final-method-and-abstract-method\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/entri.app\/blog\/"},{"@type":"ListItem","position":2,"name":"Coding","item":"https:\/\/entri.app\/blog\/category\/coding\/"},{"@type":"ListItem","position":3,"name":"What is the difference between the final method and abstract method"}]},{"@type":"WebSite","@id":"https:\/\/entri.app\/blog\/#website","url":"https:\/\/entri.app\/blog\/","name":"Entri Blog","description":"","publisher":{"@id":"https:\/\/entri.app\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/entri.app\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/entri.app\/blog\/#organization","name":"Entri App","url":"https:\/\/entri.app\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/entri.app\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/entri.app\/blog\/wp-content\/uploads\/2019\/10\/Entri-Logo-1.png","contentUrl":"https:\/\/entri.app\/blog\/wp-content\/uploads\/2019\/10\/Entri-Logo-1.png","width":989,"height":446,"caption":"Entri App"},"image":{"@id":"https:\/\/entri.app\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/entri.me\/","https:\/\/x.com\/entri_app"]},{"@type":"Person","@id":"https:\/\/entri.app\/blog\/#\/schema\/person\/f036dab84abae3dcc9390a1110d95d36","name":"Feeba Mahin","url":"https:\/\/entri.app\/blog\/author\/feeba123\/"}]}},"_links":{"self":[{"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/posts\/25526686","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/users\/111"}],"replies":[{"embeddable":true,"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/comments?post=25526686"}],"version-history":[{"count":6,"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/posts\/25526686\/revisions"}],"predecessor-version":[{"id":25564986,"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/posts\/25526686\/revisions\/25564986"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/media\/25526868"}],"wp:attachment":[{"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/media?parent=25526686"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/categories?post=25526686"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/entri.app\/blog\/wp-json\/wp\/v2\/tags?post=25526686"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}