00:00:00
Olá pessoal tudo bem Você tem dúvida de
00:00:02
como aprender classes você já aprendeu e
00:00:05
não entendeu ainda então fica comigo até
00:00:08
o final que eu te garanto que você
00:00:09
aprendeu que são classes e objetos e
00:00:12
ainda vou mostrar na prática mas antes
00:00:14
de tudo já vem aqui ó se inscreve nesse
00:00:16
canal ativa o Sininho também para toda
00:00:18
vez que eu postar vídeo você ficar
00:00:20
sabendo e curte também o vídeo Então
00:00:22
bora lá bom classe essa a gente entendeu
00:00:25
com a classe e vamos entender o que é um
00:00:26
objeto é objeto é tudo aquilo que possui
00:00:30
características e atributos né
00:00:33
características ou atributos e possui um
00:00:35
comportamento e o Estado então por
00:00:37
exemplo o carro é um objeto um carro em
00:00:40
um objeto o carro não possui alguns
00:00:42
atributos como por exemplo carro tem
00:00:45
rodas tem uma quantidade de rodas um
00:00:47
carro ele tem portas também tem um carro
00:00:50
também tem um quantidade de janelas ele
00:00:53
tem alguns acessórios como ar
00:00:54
condicionado e tudo mais vamos pensar
00:00:56
num num ONU por exemplo dessa marca 11
00:00:59
e é uno ele tem essa quantidade de
00:01:03
objetos que eu falei de atributos culpa
00:01:04
como portas rodas e etc já um carro por
00:01:09
exemplo como um gol também possui a
00:01:11
mesma coisa como rodas é possui janelas
00:01:14
possui possui portas ou se uma
00:01:17
quantidade de gasolina é a mesma coisa
00:01:19
todos eles têm essas mesmas
00:01:22
características esses mesmos
00:01:24
comportamentos como andar a frear eles
00:01:27
possuem as mesmas classificações vamos
00:01:30
dizer assim por isso que tem essa
00:01:34
diferença entre o objeto e a classe
00:01:36
objeto é como se fosse o carro ali
00:01:37
Pronto já classe é como se fosse um
00:01:41
monte de feito para montar o objeto
00:01:43
então basicamente essa diferença quando
00:01:46
a gente está programando a gente tem a
00:01:48
nossa classe que ela ele tem as
00:01:50
características e quando a gente executa
00:01:52
essa Classe A gente distância essa
00:01:54
classe ela vira um objeto Então vamos
00:01:57
mostrar na prática como funciona isso
00:01:59
e na minha classe man por exemplo aí eu
00:02:03
vou querer agora uma classe chamada
00:02:05
carro por exemplo eu vim aqui com o
00:02:08
botão direito no meu serviço aqui e já
00:02:10
vai cresce no etv carro
00:02:13
e pronto ele quebrou minha classe aqui ó
00:02:16
e antes de tudo a gente tem que entender
00:02:19
alguns conceitos que tem aqui na nossa
00:02:21
nossa novo arquivo primeiro a gente
00:02:24
coloca o atributo aqui a definição de
00:02:27
como vai ser mais clássica você Publique
00:02:29
ou se ela vai ser por 20 a minha calça
00:02:32
que ela já começa como de fogo como
00:02:34
pobre e eu vou manter assim depois vem a
00:02:36
palavra reservada Class que é de classe
00:02:38
e depois vem o nome da minha classe que
00:02:41
eu vou colocar como carro Beleza agora
00:02:44
eu vou declarar algumas variáveis que a
00:02:46
gente já aprendeu que uma seus atributos
00:02:48
na minha classe como por exemplo ela
00:02:52
E eu coloquei a quantidade de rodas
00:02:55
agora eu vou colocar a quantidade de
00:02:57
portas
00:02:59
Oi tudo bem já tá bom não só para gente
00:03:03
fazer alguma exemplificação a gente tem
00:03:06
aqui declarado como as rodas e as portas
00:03:10
é e como é que a gente transforma essa
00:03:12
classe em um objeto pequeno Nossa classe
00:03:15
com as exemplificações de como vencer as
00:03:17
características dela vai ter os moldes
00:03:19
dela para isso a gente precisa criar
00:03:22
nossa nosso objeto aqui a gente vai como
00:03:25
se fosse declarar uma variável é para
00:03:28
escrever uma variável do tipo carro da
00:03:30
mesma forma que a gente fazia com o nome
00:03:32
por exemplo a gente colocava o tipo de
00:03:34
nome aqui está colocando o tipo que é
00:03:37
carro nome beleza mas isso aqui não tá
00:03:40
inicializadas com o valor nenhum a gente
00:03:41
precisa inicializar ele com valor a
00:03:44
gente vai colocar aqui agora igual e
00:03:46
atribui o que a gente ficar tribute como
00:03:48
a gente vai estar se a gente precisa
00:03:49
colocar a palavra New a gente foca carro
00:03:52
e abre e) a gente tá chamando o Nil isso
00:03:57
aqui parece muito com o método lembra
00:03:58
que a gente fez no último vídeo se você
00:04:00
não viu o vídeo eu vou deixar aqui em
00:04:02
cima é no card aqui em cima para você
00:04:04
aprender ele bom a gente coloca o nosso
00:04:07
New aqui o carro ele que uma Instância
00:04:09
nova desse carro
00:04:10
o e transforma em um objeto aqui também
00:04:12
tem um objeto carro agora para gente
00:04:14
trabalhar que é diferente a nossa classe
00:04:17
carro
00:04:18
e aqui no carro a gente escrever carro
00:04:22
Ah e dá um ponto não aparece nada aqui
00:04:24
que a gente criou ainda essa aqui é tudo
00:04:27
já gerado como é que agente faz para
00:04:29
aparecer as variáveis que criou a aqui
00:04:31
no nosso variáveis a gente criou os como
00:04:33
presente então não tem como pelo carro
00:04:35
aqui por essa palavra essa variável se
00:04:39
objeto carro a gente acessar elas a
00:04:41
gente precisar chamar elas e colocar
00:04:43
algum meta do público que retorna O
00:04:45
valor delas Então vamos fazer isso
00:04:48
e a gente vai vir aqui vai criar um
00:04:50
método Dante fez Publique interior que a
00:04:53
gente já que a gente vai retornar uma
00:04:54
roda ou parente desculpa a gente vai
00:04:57
entrar na roda a gente tem que devolver
00:04:58
o valor que tá pedindo aqui que eu enchi
00:05:00
né
00:05:03
Oi gente rodas não vou passar em um
00:05:05
parâmetro e vou retornar as rodas pronto
00:05:08
vou fazer a mesma coisa com as portas e
00:05:12
at portas
00:05:17
e pronto ele já vai retornar os valores
00:05:19
tem que vir aqui em carro
00:05:21
Oi gente porta seguinte rodas aí já
00:05:24
tendo acesso aos atributos do meu objeto
00:05:27
que são as portas e as rodas a beleza
00:05:31
mas aqui a gente não chegou a passar o
00:05:33
valor para ele se eles não têm o valor
00:05:35
de especializado como é que eles vão
00:05:37
saber qual é o valor Primeiro vamos
00:05:39
inicializar um valor aqui para nossas
00:05:40
rodas
00:05:43
e pronto não coloca no carro com três
00:05:45
portas e um carro com quatro rodas e se
00:05:48
a gente for printar informação aqui ó
00:05:54
Bom dia de portas e garante rodas
00:05:59
e vamos rodar aqui
00:06:02
e pronto Ele pintou informação que a
00:06:04
gente pediu né que para as rodas e as
00:06:06
portas tudo certinho Ah mas como é que a
00:06:10
gente pode passando informação para
00:06:12
nossa classe grande criar do jeito que a
00:06:14
gente quer a gente vai querer criar o
00:06:16
carro quatro portas a gente vai querer
00:06:18
criar um carro talvez com duas portas
00:06:19
causas diferentes mas que têm esses
00:06:22
atributos eu não vou querer ficar
00:06:23
deixando ele fixo aqui para não poder
00:06:25
alterar eu poderia criar um método para
00:06:27
receber a informação igual a gente fez
00:06:29
naquele no vídeo passado de métodos
00:06:31
utilizando void no qual passava
00:06:34
parâmetro porém como está trabalhando
00:06:36
com uma classe aqui e para é a classe
00:06:39
funcionar de fato aqui a gente precisa
00:06:41
desses atributos eu vou colocar no
00:06:43
construtor da classe Construtora é isso
00:06:45
aqui ó
00:06:48
o Construtor é esse método aqui da minha
00:06:51
classe ele tem o mesmo nome do nome da
00:06:53
minha classe então a gente sabe que isso
00:06:55
aqui é um Construtor repente pode passar
00:06:58
para o nosso Construtor a gente pode
00:06:59
passar as informações que a gente quer
00:07:01
sentir rodas e portas a gente possa usar
00:07:04
informações aqui que a gente precisa
00:07:06
como é que a gente atribui essas
00:07:09
informações aqui nesse cara que é
00:07:15
tá beleza a gente passou aqui as nossas
00:07:18
informações eles estão vendo que tá com
00:07:20
o mesmo nome Tá esquisito tá rodas igual
00:07:22
rodas é porque as duas têm o mesmo mesmo
00:07:25
nome de variável e como a gente faz para
00:07:27
diferenciar uma da outra a gente coloca
00:07:29
um diz aqui e um desses aqui o que que
00:07:35
significa esse diz diz é o escova atual
00:07:38
que você está como tô dentro da classe
00:07:40
carro e se diz representa essa classe
00:07:42
Carmo se inscrever esse serviço aqui ele
00:07:46
representaria a classe mente
00:07:48
transcrevendo disse. Eu tô dentro
00:07:51
daquela cimento com os objetos que a
00:07:52
classe me retorna aqui é a mesma coisa
00:07:54
então tostando dentro da classe carro a
00:07:57
rodas eu tô esse cara e pegando esse
00:08:00
cara e colocando aqui atrás atribuindo
00:08:02
de um para o outro
00:08:03
tá beleza a gente já criou nas
00:08:05
construtoras com cada um com parâmetro
00:08:07
com dois parâmetros a gente vai passar
00:08:10
ele aqui no carro tá vendo aquele tá
00:08:11
dando erro é porque ele está exigindo
00:08:13
que a gente passa os dois argumentos que
00:08:15
a gente vai passar agora quatro e três a
00:08:17
quatro rodas e três portas bem certinho
00:08:21
quando a gente foi printar informação e
00:08:24
vai pintar da mesma forma três pode 3
00:08:27
portas e 4 rodas tudo certinho Ah mas eu
00:08:31
não quero passar a quantidade de rodas
00:08:32
eu consigo fazer algo diferente consigo
00:08:35
vou por exemplo Deixar que a porta seja
00:08:37
de for eu vou vir aqui vou apagar esse
00:08:39
cara vou vender tudo de carro eu vou
00:08:42
criar mais um método com o mesmo nome um
00:08:44
outro Construtora
00:08:45
é só que dessa vez eu só vou para São
00:08:48
rodas
00:08:52
o e as portas Vou deixar um valor de
00:08:54
fogo eu ficar cinco portas ser um carro
00:08:56
diferente com cinco portas aqui e quando
00:08:59
eu chamei ele aqui eu posso passar tanto
00:09:02
quatro quanto passar com dois argumentos
00:09:04
se eu passar com o argumento só ele vai
00:09:08
entender que é para eu vir para cá
00:09:09
porque só espera só tem argumento se eu
00:09:12
passar com dois argumentos por exemplo
00:09:15
ele vai entender que é para vir para cá
00:09:18
por exemplo a mas teve no começo que a
00:09:21
gente não passou nenhum argumento exato
00:09:23
no começo a gente não posso nenhum
00:09:24
argumento deixou assim é porque quando a
00:09:27
gente está trabalhando aqui com classes
00:09:29
dentro do código quando ele cumpriu a
00:09:31
lei quando está executando ele tem uma
00:09:32
classe chamada uma classe com Construtor
00:09:34
vazia criado automático assim dessa
00:09:37
forma ele já tem uma por trás dos panos
00:09:39
criada dessa forma então a gente não
00:09:42
precisa ficar criando quando vai
00:09:43
instanciar a nossa Classe A gente pode
00:09:46
deixar ela sem ou carro assim assim a
00:09:49
criação da do nosso do
00:09:52
a construtora a gente pode deixar dessa
00:09:54
forma bom a gente pode escolher qualquer
00:09:56
um dos dois que a gente pode usar eu vou
00:09:57
deixar usando os dois aqui e vou rodar
00:10:00
e ele apareceu 5 portas e 4 rodas a
00:10:03
beleza se eu quiser criar um novo o novo
00:10:05
objeto diferente o posso posso eu criar
00:10:08
o carro dois meu carro eu vou passar só
00:10:11
o primeiro atributo para vocês verem a
00:10:13
diferença
00:10:15
e eu vou vir aqui ó eu vou mandar ele
00:10:17
não vou deixar isso aqui vou mandar ele
00:10:19
pintar os dois separados para vocês
00:10:20
verem o carro2 carro2
00:10:24
eu não vou subir aqui vocês viram Ele
00:10:27
pintou o primeiro as portas e rodas do
00:10:29
primeiro que a 5 e 4 aqui ó 4 e 5 e do
00:10:33
segundo Ele pintou 3 e 5 como não tinha
00:10:36
passado nenhuma informação ele pegou e
00:10:38
formação das portas então ele declara E
00:10:41
cria objetos diferentes então cada um
00:10:44
tem as suas informações se altera a
00:10:46
quantidade de portas do carro dois aqui
00:10:48
que esse novo objeto criado novo objeto
00:10:50
instanciado ele não altera as
00:10:52
informações do objeto um totalmente
00:10:54
diferentes
00:10:56
bom E com isso a gente consegue
00:10:58
Instância e diferentes a cada informação
00:11:01
mas tem um outro tipo de classe que eu
00:11:03
quero mostrar para vocês são as classes
00:11:05
estáticas e vou querer crie uma classe
00:11:07
chamada cálculo
00:11:10
e pronto queria classe aqui chamada
00:11:12
cálculo até aqui prontinha a nossa
00:11:14
classe como é que faço para chamar Nossa
00:11:15
classe eu teria que fazer a mesma forma
00:11:18
né Qual que você guanil cálculo com
00:11:21
objetos aqui como eu não preciso
00:11:23
declarar ele já curou para mim aqui ou
00:11:25
construtor de fou
00:11:27
e ele tá aqui isso eu quiser fazer uma
00:11:31
soma vou apresentar você soma no passar
00:11:34
dois números eu vim aqui no criar esse
00:11:36
método já né
00:11:38
E aí
00:11:41
E aí
00:11:49
E aí
00:11:53
eu vim aqui agora vou printar essa
00:11:56
informação
00:11:59
e pronto certinho o mas eu preciso criar
00:12:03
uma Instância da classe calmo fica
00:12:05
esquisito isso eu tava criando uma
00:12:07
Instância sendo que eu não tenho
00:12:09
atributos dentro da classe que
00:12:11
diferencia um cálculo de outro não
00:12:14
poderia criar uma classe do tipo
00:12:15
estática é isso que a gente vai ver
00:12:17
agora poderia eu vim aqui vou querer
00:12:20
colocar um estático na frente e
00:12:22
tá beleza quando eu queria uma classe do
00:12:24
tipo static eu não preciso instanciar
00:12:27
ela eu posso simplesmente chamar ela
00:12:30
aqui ó eu passo o cálculo. Soma e
00:12:33
funciona da mesma forma ou então Rodrigo
00:12:36
por que que eu uso aqui em cima eu crie
00:12:39
uma Instância e aqui embaixo no criança
00:12:41
faça uma classe do tipo estática a
00:12:43
diferença basicamente é porque como eu
00:12:46
estou trabalhando aqui com carro cada
00:12:48
carro vai ter uma tributo diferente como
00:12:50
eu tenho um atributo aqui para o carro é
00:12:52
Passei quatro rodas e para o carro dois
00:12:54
eu passei três rodas se eu tivesse
00:12:56
trabalhando com estático ele vai ficar
00:12:58
sobrescrevendo o valor no outro e não é
00:13:00
isso que eu quero agora quando eu tô
00:13:02
trabalhando com cálculo eu não ligo que
00:13:05
eu tô passando um valor diferente aqui
00:13:07
que cada hora ele vai me trazer um valor
00:13:08
diferente isso não vai influenciar no
00:13:10
meu código agora se eu tivesse por
00:13:13
exemplo trabalhando aqui que tivesse uma
00:13:15
taxa aqui por exemplo seria diferente
00:13:18
cada cálculo EA sobre a escrever um
00:13:21
valor do
00:13:22
E aí sim essa é ruim então por exemplo
00:13:25
quando eu tô trabalhando com por exemplo
00:13:27
pessoa uma classe conta que tem
00:13:30
atributos específicos eu preciso
00:13:32
distanciar ela para cada valor não sobre
00:13:34
a escrever um do outro agora quando eu
00:13:37
tô trabalhando com cálculo que eu não
00:13:38
tenho atributo nenhum aqui por exemplo
00:13:40
esse eu sobre a escrever se tivesse
00:13:43
sobrescrever se não teria problema a
00:13:45
poderá trabalhar com uma classe estática
00:13:47
agora basicamente essas duas diferenças
00:13:51
que a gente tem entre essas duas classes
00:13:54
se vocês criassem por exemplo a classe
00:13:56
carro como eu falei como estática vai
00:13:58
dar esse problema de sobrescrever os
00:14:00
dados
00:14:01
e é basicamente é isso que a gente tem
00:14:04
aqui nas classes Espero que tenha ficado
00:14:06
Claro para vocês se vocês gostaram desse
00:14:09
vídeo se inscreve no canal por favor
00:14:11
curte comenta se vocês estão gostando e
00:14:15
desculpa o bicho e ficar tão longo mas
00:14:16
classe algum pouco mais complicado e tem
00:14:19
que explicar um pouquinho mais detalhado
00:14:20
muito obrigado por todo mundo que
00:14:22
acompanha até agora e valeu até o
00:14:24
próximo vídeo