Aula03
-
Upload
renato-sousa -
Category
Documents
-
view
47 -
download
0
Transcript of Aula03
![Page 1: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/1.jpg)
RUBYAula 03 - Classes e métodos
![Page 2: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/2.jpg)
CLASSES
• Uma classe é uma abstração de um objeto encapsulando seus comportamentos(métodos) e características(atributos).
![Page 3: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/3.jpg)
MÉTODOS
• Um método é a definição de um comportamento.
• Para descrever um método é utilizado a palavra-chave def.
• Podem ser declarados fora e dentro de classes.
![Page 4: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/4.jpg)
EXEMPLO DE MÉTODO
def diz_olaputs “Ola Mundo"
end
![Page 5: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/5.jpg)
COMO DEFINIR UMA CLASSE
• Utilizar a palavra reservada class com a palavra end definindo o fim do bloco.
![Page 6: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/6.jpg)
EXEMPLO DE CLASSE
class Pessoaend
![Page 7: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/7.jpg)
CONSTRUTOR
• O método construtor das classes recebe o nome initialize
![Page 8: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/8.jpg)
class Pessoadef initializeend
end
![Page 9: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/9.jpg)
ATRIBUTOS DE INSTÂNCIA
• Para declarar atributos de instância basta apenas usar um @.
• Os atributos possuem caráter privado.
• Para acessar os valores dos atributos é preciso métodos modificadores de acesso.
![Page 10: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/10.jpg)
EXEMPLOclass Pessoa
def initialize(nome,telefone) @nome = nome @telefone = telefoneend
def nome @nomeend
def nome=(nome) @nome = nomeend
def telefone @telefoneend
def telefone=(telefone) @telefoneend
end
![Page 11: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/11.jpg)
SIMPLIFICANDO
• Podemos simplificar usando os métodos attr_writer e attr_reader.
• Ou simplesmente attr_accessor.
![Page 12: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/12.jpg)
HERANÇA
• Para herdar uma classe, usa-se um símbolo <.
![Page 13: Aula03](https://reader035.fdocuments.net/reader035/viewer/2022071822/55ba1320bb61eba33d8b4638/html5/thumbnails/13.jpg)
HERANÇA
class PessoaFisica < Pessoaend