Programmering nivå 2

Kap 3.2 – Skapa klasser och objekt

Definiera egna klasser och skapa objekt som har egna attribut och metoder.

Mål med lektionen

När du har arbetat klart med denna lektion ska du:

  • Kunna definiera egna klasser i Python.
  • Förstå hur man skapar och använder objekt från en klass.
  • Kunna använda konstruktorer och skapa metoder i en klass.

Så här lär du dig bäst

Börja med att läsa exemplen och försök förstå hur varje del fungerar. Kopiera koden och kör den själv. Gör sedan små ändringar och se vad som händer. Tänk på hur du kan använda egna klasser för att beskriva verkliga företeelser.

Centrala begrepp

  • Klass: en mall som beskriver hur ett objekt ska fungera.
  • Objekt: en instans av en klass som skapas när programmet körs.
  • __init__(): klassens konstruktor, som körs när objektet skapas.
  • self: referens till det aktuella objektet inom klassen.
  • Metod: en funktion som tillhör en klass och använder self.

Du behöver förstå dessa begrepp för att kunna bygga program med flera objekt som samarbetar. De är grunden för det objektorienterade arbetssättet.

Skapa och använda klasser

I Python definierar du en klass med nyckelordet class. Här är ett enkelt exempel på en klass som representerar en bok:

class Book:
    def __init__(self, title, author):
        self.title = title
        self.author = author

    def print_info(self):
        print(f"{self.title} av {self.author}")

Här definieras två attribut, title och author, samt en metod print_info(). För att använda klassen skapar du ett objekt:

book1 = Book("1984", "George Orwell")
book1.print_info()

Detta skapar ett nytt objekt, book1, av typen Book. När du anropar metoden print_info() använder objektet sina egna attribut.

Öva: skapa en egen klass

Skriv en klass som heter Person. Den ska ha attributen name och age, och en metod som skriver ut:

Hej, jag heter [namn] och är [ålder] år.

Tips:

  • Börja med att skriva class Person:
  • Lägg till en __init__-metod med self, name och age.
  • Lägg till en metod say_hello() som skriver ut informationen.

Sammanfattning

  • En klass i Python skapas med class och innehåller metoder och attribut.
  • __init__ används för att sätta upp objektets startvärden.
  • self används för att referera till objektet självt.
  • Du skapar ett objekt genom att anropa klassen som en funktion.

Tillbaka till Kapitel 3