Você está na página 1de 25

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

1. Como criar projetos na IDE NetBeans

1.1Escolhertipodoprojeto.

ApsabriroNetBeanscliqueemarquivo/novo

1.2Escolheralocalizaodoprojeto.

Onomedoprojetodeversemprecomearcomaprimeiraletraemmaisculoeasdemaisem
minsculo.Casoonomesejacompostoporduaspalavras,asegundadever,tambm,comear
commaisculoeorestanteemminsculo.

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

1.3ConfiguraoinicialdoprojetoControleBibliotecario

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

1.4Criandoospacotes doprojetoMVC
Cliquecomo
botodireito
domousesobreooconedopacote
eapareceratela

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

CliqueemPacoteJavaealtereonomedopacotepara
controlebibliotecario.view

Repitaoprocedimentoanteriorparacriarospacotes
controlebibliotecario.controlecontrolebibliotecario.model.Aofinal
vocteraaseguinteconfiguraodepacotes:

1.5ContedodosPacotesparaaquiteturaMVC(Model,VieweControl)

Pacote
controlebibliotecario
Estepacoteconterapenasumaclasse.Estaclassesempreteronomedoprojeto
(
ControleBibliotecario.java
)eapenaso
mtodoprincipal
(
publicstaticvoidmain(String[]args))

Pacote
controlebibliotecario.control
Estepacoteconterasclassesdecontrole.
Classesdecontrolesoclassesquefazemumaponteentreospacotesda
viewe

model.
Estasclassesimplementamos
listeners
.

Pacote
controlebibliotecario.model
4

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

Estepacoteconterasclassesde
persistnciadedados
,ouseja,asclassesdede
controle(CRUDCreate,Read,UpdateeDelete)edeEntidadesdeBancodeDados.

Pacote
controlebibliotecario.view
Estepacoteconterasclassesde
telas
daaplicao.

2. Exemplo de uma aplicao com apenas duas


camadas (view e model)

2.1Anlise

2.1.1DescriotextualdoSistemaControleBibliotecrio

Umabibliotecaquerautomatizarseusregistrosdelivros,leitoreseemprstimos.Nessabibliotecao
prazodedevoluodeumasemana,nohmulta,enohlimitepararetiradadelivros.O
sistemadevepermitir,aoleitoroubibliotecria,amanutenodocadastrodelivros(incluso,
exclusoeconsulta)eregistrodeconsultas(paraverificarseolivroestdisponvelouemprestado).
OSistematambmdevefornecerconsultasausuriosematrasoelivrosdisponveiseretirados.

2.1.2CasosdeUso

Manter
(incluir,excluir,alterar)livros
Consultar
livros
Consultarusuriosematraso
Manter
usurios
Consultarlivrosdisponveis
Consultarlivrosemprestados

2.1.3CasodeUsoManterLivros

Sistema:
ControleBibliotecrio
NomedoCasodeUso:
Manter
Livros
Ator:
Bibliotecria
Prcondio:
MenudosistemadisponvelparaaBibliotecria

1)O
casodeusocomeaquando
aBibliotecriaacessaa
telaManterLivros
2)
OSistema
exibeumatelacomoscamposparacadastramento(cdigodolivro,ttulo,autor,
ISBN,Editora)
3)
ABibliotecria
digitaocdigodolivro
4)
ABibliotecria
clicanobotoconsultar
5)
OSistema
localizaolivroeexibeosdadosnatela.
5

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

6)
Abibliotecria
preencheosdadosnatela.
7)
Abibliotecria
clicanumdosbotes:Incluir,ExcluirouAlterar
8)
OSistema
validaosdados(exceo1)
9)
OSistema
fazamanuteno(inclui,excluioualtera)olivro.

Exceo1
OSistemaenviaaobibliotecrioumamensagemdizendoqualcampofoipreenchido
incorretamente.
TeladeMenu

TeladoCasodeUsoManterLivros

2.1.3CasodeConsultarLivros

Sistema:
ControleBibliotecrio
NomedoCasodeUso:
ConsultarLivros
Ator:
BibliotecriaeUsurio
Prcondio:
MenudosistemadisponvelparaaBibliotecria/usurio

1)O
casodeusocomeaquando
aBibliotecria/usuarioacessaa
consultarlivros
2)
OSistema
exibeumatelacomasopcesdeconsulta
3)
ABibliotecria
optaporumadasopesdeconsulta:autor,titurlo,editoraouano.
4)
ABibliotecria
clicanobotoconsultar
5)
OSistema
localizaoslivroseexibeosdadosnatela.
6)
Abibliotecria
clicanobotolimpar
6

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

7)
OSistema
lmpaatela

2.1.4EntidadedeBancodeDados

Biblioteca

(
cdigo
,nome,endereo,CEP,cidade,UF)

Livro

(
cdigo
,ttulo,autor,editora,ISBN,ano)

Leitor

(
cdigo
,nome,endereo,CEP,cidade,UF)

Emprstimo (
cdigoLivro
,
cdigoLeitor
,dataSaida,dataDevoluo)

DiagramadeClases

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

2.2DesenvolvimentodoprojetoemJavacomNetBeans

2.2.1CriandoatelaManterLivros(pacote
view
)

AbraoprojetoControleBibliotecario(
file/openproject)

Cliquecomobotodireitodomousesobreopacote
controlebibliotecario.view

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

Cliquenaopo
FormJFrame.
Casonoencontreestaopocliqueemoutros(others)e
optepelacotegoria
FormsGUISwing
etipodearquivo
FormJFrame.

Cliqueem
prximo(next)
eatribuaonomedaclasse
T
elaM

anutencaoL

ivros.
Verifiqueseo
pacote
controlebibliotecario.viewe
cliqueem
Finalizar.

10

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

Serexibidoaseguintetela:

Nocantoesquerdotemosaestruturadoprojeto.
Nocentroumatelaembrancoparaondeseroarrastadososcomponentes(Controles
Swing)
Nadireitatemososcomponentes(ControlesSwing)
Nestaprimeiraetapavamosusarapenasoscomponetes
Label
,
CampodeTexto
e
Boto.

Rtulo(Label)
Componenteutilizadoparaescreverumrtulonatela(Ttulodatela,
descriadocontedodeumcomponente,etc.)
CampodeTexto
(JTextField)Componentequepermiteaentradadeumalinhadetexto
(String).
Boto(Button)
Componentequeexecutaumaaoparaatela.
Inserindoottulodatela
CliquenocomponenteLabelecliquenatela(centro).
AparecerumcompoentejLabel1

Paraalteraraspropriedadesdestecomponente,cliquecomobotodadireitasobreele.

Apareceromenu:

Aopo
EditarTexto
permitealterarotextodoLabel.Cliquenestaopoeescrevaottulo
datela:
ManutenodeLivros.

Inserindooscamposdeentradadedados
11

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

PorenquantovamosusarapenasocomponteCampodeTexto(JTextField).
ParacadaCampodeTextoqueinserirmosnatelavamosacrescentarumLabel(JLabel)
descrevendooqueconterestecampo.
Cliquenocomponete
CampodeTexto
dapaleta
ControlesSwing
(direitadatela).
Agoracliquenaposiodatelaquevocquerqueestecomponenteaparea.
Agoracliquecomobotodadireitasobreeleparalimparotexto(EditarTexto)do
componenteedarumnomeparaestecomponente(AlteraroNomedaVarivel).O
Nomeda
Varivel
deverobedeceropadrodenomesparavariveisdojava.Nestecasousaremosonome
devarivel
codigoDoLivro
.
Repitaestaoperaoparaosdemaiscamposdetextodatela.
Inserindoosbotes
CliquenocomponenteBoto
dapaletadeControlesSwingcliquenaposiodatela
quevocquerqueestecomponenteaparea.Mudeortulodobotoclicandocomobotodadireta
sobreestecomponenteecliqueemEditarTexto(digiteottulodoboto:Consultar,Gravar,Alterar
ouExcluir).CliquecomobotodadireitasobreocomponenteecliqueemAlterarNomedaVarivel
(ex:botaoConsultar,botaoGravar,botaoAlterar,botaoExcluir).

2.2.2CriandoasclassesdeEntidadesdeBancodeDados(pacote
model)

NaanlisedosistemaControleBibliotecrio,identificamosasseguintesClassesdeEntidadesde
BancodeDados:

Biblioteca

(
cdigo
,nome,endereo,CEP,cidade,UF)

Livro

(
cdigo
,ttulo,autor,editora,ISBN,ano)

Leitor

(
cdigo
,nome,endereo,CEP,cidade,UF)

Emprstimo (
cdigoLivro
,
cdigoLeitor
,dataSaida,dataDevoluo)

CriandoaClasseEntidadedeBancodeDadosparaaclasse
Livro
.

12

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

Cliquecomobotodadireitasobreo
pacote

model
,NovoeClasseJava.

DonomeLivroparaaclasse.

Digiteocdigoabaixo:

packagecontrolebibliotecario.model

importjava.util.Objects

publicclassLivro{
privateStringcodigoLivro
privateStringtitulo
privateStringautor
privateStringeditora
privateStringISBN
privateIntegerano

13

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

publicLivro(StringcodigoLivro,Stringtitulo,Stringautor,Stringeditora,String
ISBN,Integerano){
//codigoLivroumavarivellocall
//this.codigoLivroumatributo
this.codigoLivro=codigoLivro
this.titulo=titulo
this.autor=autor
this.editora=editora
this.ISBN=ISBN
this.ano=ano
}

publicStringgetCodigoLivro(){
returncodigoLivro
}

publicvoidsetCodigoLivro(StringcodigoLivro){
this.codigoLivro=codigoLivro
}

publicStringgetTitulo(){
returntitulo
}

publicvoidsetTitulo(Stringtitulo){
this.titulo=titulo
}

publicStringgetAutor(){
returnautor
}

publicvoidsetAutor(Stringautor){
this.autor=autor
}

publicStringgetEditora(){
returneditora
}

publicvoidsetEditora(Stringeditora){
this.editora=editora
}
14

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

publicStringgetISBN(){
returnISBN
}

publicvoidsetISBN(StringISBN){
this.ISBN=ISBN
}

publicIntegergetAno(){
returnano
}

publicvoidsetAno(Integerano){
this.ano=ano
}

@Override
publicStringtoString(){
return"Livro{"+"codigoLivro="+codigoLivro+",titulo="+titulo+",autor="+
autor+",editora="+editora+",ISBN="+ISBN+",ano="+ano+'}'
}

@Override
publicinthashCode(){
inthash=5
hash=37*hash+Objects.hashCode(this.codigoLivro)
returnhash
}

@Override
publicbooleanequals(Objectobj){
if(obj==null){
returnfalse
}
if(getClass()!=obj.getClass()){
returnfalse
}
finalLivroother=(Livro)obj
if(!Objects.equals(this.codigoLivro,other.codigoLivro)){
returnfalse
}
returntrue
15

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

}


}
AgoravamoscriaraclasseContraladoraparaLivro.Estaclasseseraresponsvelporfazer
oCRUDdeLivro,ouseja,inserirumlivro,recuperarumlivro,atualizarosdadosdeumlivro
ouexcluirumlivro.
Cliquecomobotodadireitasobreo
pacote

model
,NovoeClasseJava.

Donomede
ControleLivros
paraestaclasse.

.
Digiteocdigoabaixo:

importcontrolebibliotecario.model.Livro
importjava.util.ArrayList
importjava.util.List

16

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

publicclassControleLivros{
ArrayList<Livro>livros=newArrayList<Livro>()
publicvoidincluirLivro(Livrox){
livros.add(x)
}
publicvoidexcluirLivro(Livrox){
for(Livroy:livros){
if(y.equals(x)){
livros.remove(y)
}
}
}
publicvoidalterarLivro(Livrox){
for(Livroy:livros){
if(y.equals(x)){
y.setAutor(x.getAutor())
y.setTitulo(x.getTitulo())
y.setEditora(x.getEditora())
y.setISBN(x.getISBN())
y.setAno(x.getAno())
}
}
}
publicLivroconsultarLivro(StringcodigoLivro){
LivrolivroRetorno=null
for(Livroy:livros){
if(y.getCodigoLivro().equals(codigoLivro)){
livroRetorno=y
}
}
returnlivroRetorno
}

}

17

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

2.2.3ModeloUMLdaAplicaocomduascamadas(VieweModel)

DiagramadeClasses

Essediagramadeclassesexibecomoasclassesestorelacionadaseopacoteaque
pertencem.Hdoistiposderelacionamentos:
a)
Dependncia
(
)Estetipoderelacionamentosedatravsdeummtodo.Avarivelde
refernciadoobjetonocasoacima,umainstnciadaclasseTelaManterLivrosumavarivel
localdentrodeumamtododaclasseControleBibliotecario.Portanto,assimqueomtodonesse
casoomtodomaindaclasseControleBibliotecrioterminar,avarivelserdescartada.Esse
relacionamentoexistetambmentreaclasseTelaManterLivroseaclasseLivro(videexemplos
abaixo).
Exemplos:

publicstaticvoidmain(String[]args){
TelaManterLivros
tml
=newTelaManterLivros()
tml.setVisible(true)
}

privatevoidbotaoIncluirActionPerformed(java.awt.event.ActionEventevt){
Livro
umLivro
=newLivro(
this.codigoLivro.getText(),
this.tituloLivro.getText(),
this.autor.getText(),
this.isbn.getText(),
Integer.parseInt(this.ano.getText())
)
18

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

controleLivros.incluirLivro(umLivro)

b)
Associao
(
)Estetiporelacionamentosedatravsdeumatributodotipoumaclasse.Esse
relaciomentoexisteenquantooobjetoexistir.

Exemplos:

publicclassTelaManterLivrosextendsjavax.swing.JFrame{
privateControleLivros
controleLivros

publicclassControleLivros{
privateArrayList<Livro>
livros

2.2.4ComoConectarasClassesdesseSistema(relacionamentos)

1. Classe ControleBibliotecrio com TelaManterLivros


AClasseManterLivrosaclasseapartirdoqualosistemaserinicializado.
Essaclassetemapenasomtodo
main
mtodoqueexecutadopelamquinavirtualJava.
Essemtodocriarumainstncia/objeto(
new
)daclasseTelaManterLivroseexecutaromtodo
setVisible(true)
desseobjeto.OrelacionamentodaclasseControleBibliotecariocoma
TelaManterLivrosserdotipo
dependncia
(
),quesignificaumrelacionamentoacionado
atravsdeummtodo,portanto,temporrio.

publicclassControleBibliotecario{

publicstaticvoidmain(String[]args){

TelaManterLivrostml=newTelaManterLivros()

tml.setVisible(true)

}

}

2. Classe TelaManterLivros com ControleLivros


EssaclassetersempreassociadoaelaumatributodotipoControleLivros,queservirpara
fazeroCRUDdeLivro.Essarelaodotipoassociaao(
)significaqueessaclasse
temumatributodotipoControleLivros.

19

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

publicclassTelaManterLivrosextendsjavax.swing.JFrame{
private
ControleLivroscontroleLivros

publicTelaManterLivros(){
controleLivros=newControleLivros()

initComponents()
}

Vamosassociaraosbotes(Consultar,Incluir,AlterareExcluir),mtodosqueseroacinados
quandoclicarmosnessesbotes.

Paraassociarumevento(clicar)sobreumcomponentedotipoboto(JButton):
a)
BotoConsultar
:Cliquecomobotodadireitadomousesobreooboto
Consultar.

b)Cliquenaopo
Eventos/Action/actionPerformed
.Sercriadoummtodoque
seracionado(videabaixo)semprequeclicarmosnoboto.

privatevoidbotaoConsultarActionPerformed(java.awt.event.ActionEventevt){

StringcodigoLivro=this.codigoLivro.getText()

LivroumLivro=controleLivros.consultarLivro(codigoLivro)

if(umLivro!=null){

this.autor.setText(umLivro.getAutor())

this.ano.setText(umLivro.getAno().toString())

this.isbn.setText(umLivro.getISBN())

}else{

JOptionPane.showMessageDialog(null,"LivroInexistente")

c)
BotoIncluir
:CliquecomobotodadireitadomousesobreobotoIncluir.

privatevoidbotaoIncluirActionPerformed(java.awt.event.ActionEventevt){

LivroumLivro=newLivro(

this.codigoLivro.getText(),

this.tituloLivro.getText(),

this.autor.getText(),
20

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

this.isbn.getText(),
Integer.parseInt(this.ano.getText()))
controleLivros.incluirLivro(umLivro)

d)
BotoExcluir

3. Classe ControleLivros de Livro


AclasseControleLivrosterumconjunto(
ArrayList
)deobjetosdotipoLivro.Essaclasse
terosmtodosquepermirofazero
CRUD
(incluir,consultar,alterareexcluir)deobjetosdo
tipoLivrodoArrayListdeLivro.EssarelaoentreControleLivroseLivrodotipo
associaoessaclasseterumatributodotipoArrayList<Livro>.Temos,atravsdaclasse
ArrayList<Livro>,umrelacionamentodotipoumparamuitos,oumelhor,umobjetodaclasse
ControleLivrosterumconjuntodezeroounobjetosdotipoLivro.

packagecontrolebibliotecario.model

importjava.awt.List
importjava.util.ArrayList

publicclassControleLivros{
privateArrayList<Livro>livros

publicControleLivros(){
livros=newArrayList<Livro>()
}
publicvoidincluirLivro(Livrox){
livros.add(x)
}
publicvoidalterarLivro(Livrox){
for(Livroy:livros){
if(x.equals(y)){
y.setAno(x.getAno())
y.setAutor(x.getAutor())
y.setISBN(x.getISBN())
y.setTitulo(x.getTitulo())
}
}
}
21

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

publicvoidexcluirLivro(Livrox){
for(Livroy:livros){
if(x.equals(y)){
livros.remove(x)
}
}
}
publicLivroconsultarLivro(StringcodigoLivro){
LivrolivroRetorno=null
for(Livroy:livros){
if(y.getCodigoLivro().equals(codigoLivro)){
livroRetorno=y
}
}
returnlivroRetorno
}
}

2.3DiagramadeSequncia(UML)doCDUManterLivros
OsDiagramasdeSequnciasoutilizadosparamodelarosaspectosdinmicosde
sistemas.Essediagramamostraumainterao(geralmenteumCasodeUso),formadaporum
conjuntodeobjetoseseusrelacionametnos,incluindoasmensagensquepoderoserenviadas
entreeles.Essedigramaenfatizaordenaotemporaldasmensagens.

22

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

No exemplo acima vemos um trecho de diagrama desequnciaparaocasodeusoManterLivro.Os


retngulos representam os objetos (varivel de referncia : Classe). As setas so as mensagens
(mtodos) que um objetorequisitadeoutro.Asmensagens(chamadasdemtodosdeumobjetopor
outro)podesersncronasouassncronas.Quandoamensagemassncrona(semretorno),aseta
fina, quandosncrona(chamadacomretorno)alinhatemumasetaretangularcheia.Umaresposta
deumamensagemsncronarepresentadaporumalinhatracejadacomumasetafina.

2.4ConceitosdeOrientaoaObjetosutilizadosnesteprojeto.

2.4.1CamadadeViso
2.4.1.1Componente
Umcomponenteumobjetoquetemumarepresentaogrficaquepodeserexibidonuma
telaGUI(GraphicalUserInterface)equepodeinteragir(respoderaeventoscomoclicar,arrastar,
etc.)comousurio.Exemplosdecomponentessoosbuttons,checkboxes,comboboxes,
radiobuttons,textfields,labels,frames,etc.
Oscomponentesqueforamutilizadosnessaaplicaopertencemaopacote
javax.swing
e
estoagrupadosemControlesSwingdapaletadecomponentesdoNetBeans:javax.swing.JButton,
javax.swing.JCheckBox,javax.swing.JComboBox,javax.swing.JRadioButton,javax.swing.JTextFiled,
javax.swing.JLabel,etc.

2.4.1.2Herana
Umoutrotipodecomponentessooscontineres.Oscomponentesdotipocontinerpodem
agruparoutroscomponentesnoseuinterior(Ex.JFrame,JPanel,JScrollPanel,etc.)
QuandocriamosatelaManterLivrosoptamospeloJFramequeumcomponentedotipo
continer.AocriarmosaclasseManterLivros,oqueaconteceufoiqueessaclassepassouaserum
JFrame,ouseja,herdouascaractersticas(atributos)ecomportamentos(mtodos)daclasse
JFrame.Podemosveressa
heranaexplcita
nocdigodaclasseManterLivros:

publicclass
TelaManterLivros

extends
javax.swing.
JFrame
{

EmUML

23

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

2.4.1.3Tratamentodeeventos
Umcomportamentoassociadoasclassesquedefinemoscomponentesacapacidadede
interagircomosusurios.Assim,umcomponentepodeserprogramado(mtodo)paraterumaao
quandoousrioclicanele,arrasta,entra,sai,etc.
Oseventossoobjetoscriadosquandoumaaosobreumcomponenteexecutada.Por
exemplo,quandoprogramamosobotoConsultarparaqueeleexecutasseumaconsultalistade
livros,optamospeloeventoActionPerformed(clicarsobreoboto)paraexecutaraaodesejada.
Vimosentoquefoicriadooseguintemtodo:
privatevoidbotaoConsultarActionPerformed(java.awt.event.ActionEventevt){

Nomedomtodo:botaoConsultarActionPerformed
Retornodomtodo:void
Parmetrosdomtodo:ActionEventevt

Percebemosque:
a)onomedomtodoestassociadoaonomedocomponente+onomedoevento,
b)omtodonodevolver(return)nenhumvalor,apsotrminodaexecuo,
c)omtodoreceberumobjetodotipoActionEventassociadoavarivelevt.

Ositensaebsoperfeitamenteentendidos.Aquestocomoassociaraumcomponente
umevento.SeexpandirmosomtodoinitComponents()veremosque:

a)foigeradoumainstnciadeJButton:
consultar=newjavax.swing.JButton()
b)foiacionadoomtodoaddActionListenerdobotoconsultar:

botaoconsultar.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
consultarActionPerformed(evt)
}
})

Paraentenderestecomandoprecisoentenderque:
24

DASS - Programao Orientada a Objetos com Java - Prof Gilmar Carvalho

a)OmtodoaddActionListenerrecebeumparmetroqueumobjetodotipoActionListener.
b)Seobservamosadescriodoparmetroveremosocomando
new
indicandoquealiser
criadoumobjetodotipoActionListener.
c)Essaformadecriarumobjetodiretamentonoparmetrochamadode
innerclass
annima.

2.4.1.4Estadodeumobjeto.

Oestadodeumobjetoenvolvetodososatributos(propriedades)doobjetojuntamentecom
valoresatuaisdecadaumadessesatributos.Oestadodeumobjetodinmico.Assim,aovisualizar
seuestado,estamosrealmenteespecificandoovalordeseuestadoemumdeterminadomomento
notempoenoespao.
Umaclassequenotemnenhumatributoprprioouherdado,tersempreomesmoestado
paratodososobjetoscriados.Omesmovaleseosatributosforemtodosdotipo
static
.Nessecaso,
geralmenteosmtodosdaclassetmomodificador
static
indicandoqueomtodopodeser
chamadosemanecessidadedecriarumainstncia/objeto,bastandoapenasquesefaareferncia
aonomedaclasse,seguidodepontoeonomedomtodo.Asclassesqueagrupamfunescomoa
classe
Math
dopacote
java.lang
,tmseusmtodosdeclaradoscomo
static,
portantopodemos
acionarseusmtodosdiretamentepelonomedaclasse(Ex.
Math.cos(),Math.pow(doublea,
doubleb),Math.cos(doublea),Math.sqrt(doublea),Math.round(doublea),Math.random(),
etc.
).

2.4.2CamadaModelo
2.4.2.1ClassedeEntidade
2.4.2.2ClassedeControle
2.4.2.3Listas(ArrayList)

25

Você também pode gostar