2018-10-12 15:37:13 -04:00
---
title: Methods
---
## Methods
2019-06-28 03:51:42 +02:00
In object oriented programming a function within a class or an object is named a method. Imagine you have a cat object and inside the class there is a funcion named scratch, you can now use the cat's scratch method by calling it in the following way:
```py
cat.scratch(somePerson)
```
## Different kind of methods
2018-10-12 15:37:13 -04:00
2019-06-28 03:51:42 +02:00
There are different types of methods you can define in a class, some of them are listed here.
2018-10-12 15:37:13 -04:00
2019-06-28 03:51:42 +02:00
The constructor, a method that is executed when the object is created:
2018-10-12 15:37:13 -04:00
2019-06-28 03:51:42 +02:00
```py
class Cat:
def __init__ (self, name): // Constructor which recieves a name
self.name = name
```
2018-10-12 15:37:13 -04:00
2019-06-28 03:51:42 +02:00
Standard methods:
```py
class Cat:
name = "Bob"
def scratch(self, person): // Standard method, recieves person to scratch
print(self.name + " scratched " + person)
```
2018-10-12 15:37:13 -04:00
2019-06-28 03:51:42 +02:00
The destructor, a method that is executed when the object is deleted by the garbage collector.
```py
class Cat:
name = "Bob"
def __del__ (self):
print(name + " is no more.")
```