Una clase es un proyecto o prototipo definido por el usuario a partir del cual se crean objetos. Las clases proporcionan un medio para agrupar datos y funcionalidad. La creación de una nueva clase crea un nuevo tipo de objeto, lo que permite crear nuevas instancias de ese tipo. Cada instancia de clase puede tener atributos adjuntos para mantener su estado. Las instancias de clase también pueden tener métodos (definidos por su clase) para modificar su estado.
Ejemplo:
# Python program to demonstrate # classes class Person: # init method or constructor def __init__(self, name): self.name = name # Sample Method def say_hi(self): print('Hello, my name is', self.name) p = Person('Nikhil') p.say_hi()
Producción:
Hello, my name is Nikhil
Nota: Para obtener más información, consulte Clases y objetos de Python
Método de instancia
Los atributos de instancia son aquellos atributos que no son compartidos por los objetos. Cada objeto tiene su propia copia del atributo de instancia.
Por ejemplo, considere una clase de formas que tienen muchos objetos como círculo, cuadrado, triángulo, etc. que tienen sus propios atributos y métodos. Un atributo de instancia se refiere a las propiedades de ese objeto en particular, como que el borde del triángulo sea 3, mientras que el borde del cuadrado puede ser 4.
Un método de instancia puede acceder e incluso modificar el valor de los atributos de una instancia. Tiene un parámetro predeterminado: –
- self : es una palabra clave que apunta a la instancia pasada actual. Pero no es necesario pasarlo cada vez que se llama a un método de instancia.
Ejemplo:
# Python program to demonstrate # instance methods class shape: # Calling Constructor def __init__(self, edge, color): self.edge = edge self.color = color # Instance Method def finEdges(self): return self.edge # Instance Method def modifyEdges(self, newedge): self.edge = newedge # Driver Code circle = shape(0, 'red') square = shape(4, 'blue') # Calling Instance Method print("No. of edges for circle: "+ str(circle.finEdges())) # Calling Instance Method square.modifyEdges(6) print("No. of edges for square: "+ str(square.finEdges()))
Producción
No. of edges for circle: 0 No. of edges for square: 6
Publicación traducida automáticamente
Artículo escrito por sathiyajith19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA