Você está na página 1de 2

Programao Orientada a Objetos Introduo Este trabalho tem como objetivo a apresentao dos pricipais conceitos com relao

a Programao Orientada a Objetos, ou POO. Vamos mostrar os principais conceitos e suas definies e descrever cada item com exemplos em java. Descrio. A POO surgiu como mais uma alternativa de estruturas de programao, concorrendo com a Programao orientada a eventos, onde era difcil a reutilizao de cdigos e se utilizava de ponteiros. Na POO esta estrutura foi substituda por pequenos arquivos chamados de classes e objetos, as quais vamos explicar em breve. Pacotes Um pacote nada mais do que um arquivo, onde seu contedo esto diversos arquivos de classes escritos pelos programadores. O pacote busca organizar as classes separando-as conforme suas finalidades e descries. por exemplo: Quando criamos uma classe para conexo com o banco de dados, esta deve estar em um pacote que s se relacione com o banco de dados, ou melhor ainda se ela estiver em um pacote exclusivo para conexes com banco de dados. No faria sentido inclui-la junto com as classes que faam validaes ou at mesmo as classes que criam os ambientes visuais. Classes Uma classe um conjunto de metodos e atributos que juntos tambm podem ser chamados de atores, que so organizados de forma a serem utilizados e reutilizados por outras classes. uma classe na maioria das vezes pode seus atores utilizados por outras classes e tambm podem utilizar outras classes. Quando uma classes utiliza um ator de uma outra classe esta conhecida como subclasse ou classe filha, e a classe a ser utilizada uma classe me. toda classe possui uma estrutura bsica, comum a qualquer uma. Antes de tudo, em seu corpo dever ser definido o nome da classe, que deve ser o mesmo nome do arquivo onde ela est descrito. A linguagem java at permite que mais de uma classe seja criada em um arquivo, mais isto no recomendado, pois isto pode tornar complexo a utilizao das classes por outras subclasses, portanto vo contra os princpios de boas praticas. posterior declaramos os atributos das classes, e em seguida criamos os seus metodos. um quarto elemento tambm pode ser declarado, caso a classe utilize os metodos de outras classes, no caso ela importara outra classe, e a declarao de importao ser feita logo aps a declarao do nome da classe. Objetos Um objeto uma referencia a uma outra classe. ela serve para que uma classe que est importando outra classe crie um atributo que acesse os atores de outra classe. Quando se cria um objeto para utilizar um metodo por exemplo, um espao criado na memria para o armazenamento do resultado obtido pelo metodo utilizado, ou seja, o excesso da utilizao da criao de objetos pode sobrecarregar a memria da maquina onde o sistema roda, portando este recurso deve ser utilizado com moderao.

Abstrao A idia de abstrao justamente a criao de referncia do mundo real dentro do sistema que esta sendo implementado. Por exemplo: Em um cadastro de uma pessoa, sempre ir constar o nome, CPF, endereo, telefone, etc. Quando estamos descrevendo o que o sistema deve constar do cliente, estamos abstraindo do mundo real tudo aquilo que relevante para o nosso cadastro. Podemos abstrair tambm as aes da pessoa, como as compras que ele faz na loja, a forma de parcelar, qual o meio de pagamento. Temos que deixar bem claro que a abstrao no a implementao dos atributos ou aes, mais sim o que deve conter de determinado fato que esta sendo abstraido. possvel criar classes totalmente abstratas, que so conhecidas como interfaces. em uma interface voc no vai implementar um metodo, mais sim descrever quais os metodo que uma classe filha ser obrigada a ter quanto extender esta interface. Encapsulamento o encapsulamento a ocultao de metodos e atributos de uma classe para que esta no posse ser acessada diretamente. Mas neste caso, como podemos utilizar este metodo ou atributo? para isso, deve-se criar outros metodos que faro estes acessos, que so chamados de modificadores. estes modificadores esto na mesma classe onde os metodos encapsulados esto, portanto estes tem seus acessos pblicos, e podem ser acessados por qualquer classe, e tambm podem acessar os metodos encapsulados, que no podem ser acessados pelas outras classes, servindo como a ligao entre as classes externas e os metodos e atributos encapsulados de sua classe. Herana Eis aqui a funo mais importante da orientao a objetos. A herana a capacidade de uma subclasse herdar os metodos e atributos de uma superclasse. Do outro lado da viso da abstrao, a herana a implementao dos metodos e atributos de uma classe, abstrata ou no. sendo assim possvel herdar alm dos metodos j implementados, os metodos que esto somente descritos em sua classe me, implementando em seu corpo, ou simplesmente redescrevendo, na certeza de que este metodo seja implementado por outra classe que a herde. a cadeira de heranas infinita, no existe limite de quantos nveis uma classe ser herdada, mas cada classe s pode herdar uma classe por vez, sendo assim, uma classe pode ter diversas classes filhas, mas s pode ter uma classe me. Polimorfismo Polimorfismo a capacidade que um metodo tem de ter diversas implementaes ao longo que se herdada. por exemplo. quando uma classe herdada por uma outra classe, esta segunda alm de implementar dodos os metodos da primeira, tambm pode reescrever estes metodos, mudando a forma do metodo, portando, polimorfismo pode ser descrito como a capacidade de um metodo ter varias formas. Para evitar que um metodo seja modificado este deve possuir o modificador final, no sendo mais possvel mudar sua forma, descrevendo como um metodo que no tem mais como altera-lo.