Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/bisand/oop-arv
https://github.com/bisand/oop-arv
Last synced: 7 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/bisand/oop-arv
- Owner: bisand
- Created: 2024-05-28T11:31:44.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-05-28T17:27:54.000Z (7 months ago)
- Last Synced: 2024-12-31T20:52:53.902Z (8 days ago)
- Language: Python
- Size: 78.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Objektorientert Programmering
## Arv
Arv (engelsk: Inheritance) er et grunnleggende prinsipp i objektorientert programmering (OOP) som muliggjør at en klasse kan arve egenskaper (som metoder og variabler) fra en annen klasse.
Dette konseptet er sentralt for å skape en hierarkisk klassifisering av klasser, og det bidrar til kodegjenbruk og en mer organisert og forståelig struktur i programmer.### Praktisk eksempel på bruk av arv
___
`Eksempel: Person -> Student, Person -> Teacher `
```python
class Person:
def __init__(self, first_name: str, last_name: str, age: int, gender: str):
self.first_name = first_name
self.last_name = last_name
self.age = age
self.gender = genderclass Student(Person):
def __init__(self, first_name: str, last_name: str, age: int, gender: str, student_id: str, major: str):
super().__init__(first_name, last_name, age, gender)
self.student_id = student_id
self.major = majordef vis_info(self):
return f"Student: {self.first_name} {self.last_name}, Alder: {self.age}, Kjønn: {self.gender}, ID: {self.student_id}, Studieretning: {self.major}"class Teacher(Person):
def __init__(self, first_name: str, last_name: str, age: int, gender: str, employee_id: str, department: str):
super().__init__(first_name, last_name, age, gender)
self.employee_id = employee_id
self.department = departmentdef vis_info(self):
return f"Lærer: {self.first_name} {self.last_name}, Alder: {self.age}, Kjønn: {self.gender}, ID: {self.employee_id}, Avdeling: {self.department}"# Eksempel på bruk
student = Student("Alice", "Larsen", 20, "Kvinne", "S12345", "Datavitenskap")
teacher = Teacher("Bob", "Johansen", 45, "Mann", "T67890", "Matematikk")print(student.vis_info())
print(teacher.vis_info())```
### Oppgaver
Oppgaver nedenfor er ment for å gi deg en forståelse av hvordan klasser og objekter fungerer. Disse skal leveres innen neste forelesning. Arbeidskravet vil bestå av å få godkjent minst 2 av oppgavene. Det er ønskelig at dere leverer så mange som mulig, men det er ikke et krav.
Klikk [her](oppgaver/oppgaver.md) for å se oppgaver ([PDF](oppgaver/oppgaver.pdf)).