Exemplo n.º 1
0
from classes import Escritor
from classes import Caneta
from classes import MaquinaDeEscrever

escritor = Escritor('Valter')

caneta = Caneta('neon')

maquina = MaquinaDeEscrever('Eletrica')

escritor.ferramenta = caneta
escritor.ferramenta.escrever()

escritor.ferramenta.apagar()
Exemplo n.º 2
0
from classes import Escritor
from classes import Caneta
from classes import MaquinaDeEscrever

escritor = Escritor("Rick Riodan")
caneta = Caneta('Bic')
maquina = MaquinaDeEscrever()

escritor.ferramenta = caneta
escritor.ferramenta.escrever()

del escritor
print(caneta.marca)
maquina.escrever()
Exemplo n.º 3
0
#NA ASSOSSIAÇÃO UMA CLASSE NÃO PEDENDE DA OUTRA PARA FUNCIONAR, BASTA VOCÊ FAZER REALAÇÃO DE UM ATRIBUTO

from classes import Escritor
from classes import Caneta
from classes import MaquinaDeEscrever

e = Escritor('Yago')
print(e.nome)
c = Caneta('Bic')
print(c.marca)
m = MaquinaDeEscrever()
m.escrever()

#REALIZANDO ASSOCIAÇÃO ENTRE AS CLASSES ESCRITOR E CANETA/MAQUINADEESCREVER
e.ferramenta = c
#e.ferramenta = m
e.ferramenta.escrever()
Exemplo n.º 4
0
from classes import Caneta

c1 = Caneta('Bic', 'Azul', 0.5)

c2 = Caneta('KKK', 'Verde', 1.0)

print(c1.modelo, c1.cor, c1.ponta)

# print(c2.modelo, c2.cor, c1.ponta)
Exemplo n.º 5
0
'''
Associação: Um objeto usa outro objeto
Agregação: Um objeto tem outros objetos como parte de si
Composição: Um objeto é dono de outros objetos
Herança: Um objeto é outro objeto

'''

from classes import Escritor, Caneta, MaquinaDeEscrever

escritor = Escritor('Eça de Queiroz')
caneta = Caneta('BIC')
maquina = MaquinaDeEscrever('Olivetti')

escritor.ferramenta = caneta
escritor.ferramenta.escrever()

Exemplo n.º 6
0
from classes import Escritor
from classes import Caneta
from classes import MaquinaDeEscrever

escritor = Escritor('Joãozinho')
caneta = Caneta('bic')
maquina = MaquinaDeEscrever()

print(escritor.nome)
print(caneta.marca)
print(maquina)

maquina.escrever()
escritor.ferramenta = caneta
escritor.ferramenta.escrever()
Exemplo n.º 7
0
"""
Relções entre as classes1:
    Associação:
        Uma classe se relaciona com a outra classe, mas nenhuma das duas classes1 dependem uma da outra
"""
from classes import Escritor
from classes import Caneta
from classes import MaquinaDeEscrever

escritor = Escritor('Rafael')
caneta = Caneta('Jotinha')
maquina = MaquinaDeEscrever()

escritor.ferramenta = caneta
escritor.ferramenta.escrever()

escritor.ferramenta = maquina
escritor.ferramenta.escrever()
Exemplo n.º 8
0
from classes import Escritor, Caneta, Maquina_De_Escrever

escritor1 = Escritor('Paulo')
caneta1 = Caneta('Bic')
maquina1 = Maquina_De_Escrever()


# ferramenta recebeu um objeto inteiro, maquina1
escritor1.ferramenta = maquina1
# Sendo assim, agora ferramenta possui maquina1 e pode acessar seus métodos
escritor1.ferramenta.escrever()
Exemplo n.º 9
0
from classes import Escritor, Caneta, MaquinaDeEscrever

escritor = Escritor('Leialo')
caneta = Caneta('Vermelha')
maquina = MaquinaDeEscrever()

escritor.ferramenta = caneta

escritor.ferramenta.escrever()

del escritor
maquina.escrever()
print(escritor)
Exemplo n.º 10
0
Duas classes em python podem ter alguma associação, mas não necessariamente
dependem uma da outro. Elass apenas usam umas as outras

ex.
ob1 = Objeto1()
ob2 = Objeto2()

ob1.atributo = ob2
ob1.atributo.[atrubuto ou metodo de ob2]

OBS: neste tipo simples de referencia, após escluir o objeto princiapl
os objetos que estavam referenciados, permanecem intactos

"""

from classes import Escritor, Caneta, Maquina

print('\n##### Instanciando classes #####')
escritor = Escritor('Ruy')
caneta = Caneta('azul')
maquina = Maquina()

print('\n##### Associando caneta ao escritor #####')
escritor.ferramenta = caneta
escritor.ferramenta.escrever()

print('\n##### Excluindo obj principal, e mantendo os referenciados #####')
del escritor
caneta.escrever()
Exemplo n.º 11
0
from classes import Escritor, Caneta, MaquinaDeEscrever

escritor = Escritor('José')
caneta = Caneta('Divers')
maquina = MaquinaDeEscrever()

# Associação entre os objetos:
escritor.ferramenta = caneta
escritor.ferramenta.escrever()