<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="sv">
	<id>https://wiki.linux.se/index.php?action=history&amp;feed=atom&amp;title=Slutligt_nyckelord</id>
	<title>Slutligt nyckelord - Versionshistorik</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.linux.se/index.php?action=history&amp;feed=atom&amp;title=Slutligt_nyckelord"/>
	<link rel="alternate" type="text/html" href="https://wiki.linux.se/index.php?title=Slutligt_nyckelord&amp;action=history"/>
	<updated>2026-04-10T21:38:59Z</updated>
	<subtitle>Versionshistorik för denna sida på wikin</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>https://wiki.linux.se/index.php?title=Slutligt_nyckelord&amp;diff=3232&amp;oldid=prev</id>
		<title>Admin: Skapade sidan med &#039;== Final-nyckelordet ==  Nyckelordet `final` förhindrar barnklasser från att åsidosätta en metod eller konstant genom att sätta final framför definitionen. Om klassen själv definieras som final kan den inte utökas.  === Exempel #1: Finala metoder ===  &lt;pre&gt; &lt;?php class BaseClass {    public function test() {        echo &quot;BaseClass::test() anropad\n&quot;;    }        final public function moreTesting() {        echo &quot;BaseClass::moreTesting() anropad\n&quot;;    } }  class...&#039;</title>
		<link rel="alternate" type="text/html" href="https://wiki.linux.se/index.php?title=Slutligt_nyckelord&amp;diff=3232&amp;oldid=prev"/>
		<updated>2024-08-19T05:36:01Z</updated>

		<summary type="html">&lt;p&gt;Skapade sidan med &amp;#039;== Final-nyckelordet ==  Nyckelordet `final` förhindrar barnklasser från att åsidosätta en metod eller konstant genom att sätta final framför definitionen. Om klassen själv definieras som final kan den inte utökas.  === Exempel #1: Finala metoder ===  &amp;lt;pre&amp;gt; &amp;lt;?php class BaseClass {    public function test() {        echo &amp;quot;BaseClass::test() anropad\n&amp;quot;;    }        final public function moreTesting() {        echo &amp;quot;BaseClass::moreTesting() anropad\n&amp;quot;;    } }  class...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Ny sida&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Final-nyckelordet ==&lt;br /&gt;
&lt;br /&gt;
Nyckelordet `final` förhindrar barnklasser från att åsidosätta en metod eller konstant genom att sätta final framför definitionen. Om klassen själv definieras som final kan den inte utökas.&lt;br /&gt;
&lt;br /&gt;
=== Exempel #1: Finala metoder ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
class BaseClass {&lt;br /&gt;
   public function test() {&lt;br /&gt;
       echo &amp;quot;BaseClass::test() anropad\n&amp;quot;;&lt;br /&gt;
   }&lt;br /&gt;
   &lt;br /&gt;
   final public function moreTesting() {&lt;br /&gt;
       echo &amp;quot;BaseClass::moreTesting() anropad\n&amp;quot;;&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class ChildClass extends BaseClass {&lt;br /&gt;
   public function moreTesting() {&lt;br /&gt;
       echo &amp;quot;ChildClass::moreTesting() anropad\n&amp;quot;;&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
// Resulterar i ett fatalt fel: Kan inte åsidosätta final-metoden BaseClass::moreTesting()&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Exempel #2: Finala klasser ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
final class BaseClass {&lt;br /&gt;
   public function test() {&lt;br /&gt;
       echo &amp;quot;BaseClass::test() anropad\n&amp;quot;;&lt;br /&gt;
   }&lt;br /&gt;
&lt;br /&gt;
   // Eftersom klassen redan är final är final-nyckelordet överflödigt&lt;br /&gt;
   final public function moreTesting() {&lt;br /&gt;
       echo &amp;quot;BaseClass::moreTesting() anropad\n&amp;quot;;&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class ChildClass extends BaseClass {&lt;br /&gt;
}&lt;br /&gt;
// Resulterar i ett fatalt fel: Klassen ChildClass kan inte ärva från final-klassen (BaseClass)&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Exempel #3: Finala konstanter från och med PHP 8.1.0 ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
class Foo&lt;br /&gt;
{&lt;br /&gt;
    final public const X = &amp;quot;foo&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
class Bar extends Foo&lt;br /&gt;
{&lt;br /&gt;
    public const X = &amp;quot;bar&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// Fatalt fel: Bar::X kan inte åsidosätta final-konstanten Foo::X&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Notera:&amp;#039;&amp;#039;&amp;#039; Egenskaper kan inte deklareras som finala: endast klasser, metoder och konstanter (från och med PHP 8.1.0) kan deklareras som finala. Från och med PHP 8.0.0 kan privata metoder inte deklareras som finala, förutom konstruktorn.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Sidslut =&lt;br /&gt;
Orginalhemsidan på Engelska : https://www.php.net/manual/en/language.oop5.final.php&lt;br /&gt;
&amp;lt;BR&amp;gt;[[PHP]]&lt;br /&gt;
&amp;lt;BR&amp;gt;[[Språkreferens]]&lt;br /&gt;
&amp;lt;BR&amp;gt;[[Språkreferens#Klasser_och_Objekt]]&lt;br /&gt;
[[Kategori:Php]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;hr&amp;gt;&lt;br /&gt;
Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på &lt;br /&gt;
https://www.linux.se/kontaka-linux-se/&lt;/div&gt;</summary>
		<author><name>Admin</name></author>
	</entry>
</feed>