[Python] Estensione classi
Paolo Ferretti
paolo a paoloferretti.it
Ven 20 Giu 2008 16:58:18 CEST
Anche questo è il mio primo messaggio su questa ml ;-)
Allora, a me sembra corretta la tua soluzione. Se usi l'ultima versione
di Python, però, ti consiglio di usare la nuova sintassi per le classi.
Non cambia gran chè a livello pratico, ma penso sia buona abitudine
utilizzare i consigli di una buona scrittura di codice Python! Quindi:
class Veicle(object):
def __init__(self, name, speed, fire_power, life = 500, shield=False):
self._name = name
self._speed=speed #km/h
self._fire_power=fire_power
self._shield = shield
self._life = life
class Submarine(Veicle):
def __init__(self, name, speed, fire_power, deepness=0, life =
500, shield=False):
#Veicle.__init__(self, name, speed, fire_power)
super(Submarine, self).__init__(name, speed, firepower)
self._deepness = deepness
Valerio Pachera ha scritto:
> Ciao a tutti, questo è il mio primo messaggio in lista.
> Sono un appassionato di informatica (in particolare per la piattaforma
> Linux) e da un po' di tempo ho cominciato a studiare python.
> Ho qualche nozione di altri linguaggi, in particolare VB e action script 2.
>
> Dunque, veniamo al sodo. Ho una classe (Veicle) che definisce delle
> carratteristiche comuni a dei veicoli da guerra.
> Ora voglio estendere la classe perchè per aggiungere la propietà
> "deepness" ai sottomarini.
> Mi dite se è corretto fare così:
>
> class Veicle:
>
> def __init__(self, name, speed, fire_power, life = 500, shield=False):
> self._name = name
> self._speed=speed #km/h
> self._fire_power=fire_power
> self._shield = shield
> self._life = life
>
> class Submarine(Veicle):
> def __init__(self, name, speed, fire_power, deepness=0, life =
> 500, shield=False):
> Veicle.__init__(self, name, speed, fire_power)
> self._deepness = deepness
>
> Grazie.
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
>
>
Maggiori informazioni sulla lista
Python