As classes seladas são as mais simples e fáceis de serem compreendidas, mas nem por isso menos importantes. Imagine que você tenha uma aplicação com várias classes gerando uma hieraraquia de heranças. Existe uma Superclasse, que é herdada por Subclasse1 e também temos a Subclasse 2, que herda de Subclasse 1, conforme a figura abaixo:
![Classes Seladas - Programação Orientada a Objetos - POO]( ../../assets/img/cursos/poo/14-Classes_Seladas_POO1.png)
Essa hierarquia, conforme ilustrada na figura acima, poderia não ter fim, já que poderíamos criar uma Subclasse 3, que herdaria de Subclasse 2 e assim por diante. Bem, mas imagine que você queira impedir isso, fazendo com que determinada classe não possa ser herdada, ou seja, você tem a chamada “classe pronta”, que por não ser herdada também não aceitará a sobrescrita de métodos. Bem, para proteger sua classe contra novas operações de herança é que o tipo de classe selada é usada. Eu criei a mesma estrutura de classes da imagem acima:
![Classes Seladas - Programação Orientada a Objetos - POO]( ../../assets/img/cursos/poo/14-Classes_Seladas_POO2.png)
Agora vou selar a Superclasse para impedir que a Subclasse1 herde dela, vejam como a sintaxe é simples:
![Classes Seladas - Programação Orientada a Objetos - POO]( ../../assets/img/cursos/poo/14-Classes_Seladas_POO3.png)
Vou tentar compilar essa aplicação, já que a Subclasse1 herdava dela e a Subclasse2 herdava de Subclasse1:
![Classes Seladas - Programação Orientada a Objetos - POO]( ../../assets/img/cursos/poo/14-Classes_Seladas_POO4.png)
Vejam que não foi possível e um erro de compilação surgiu.
Essa mesma lógica poderia valer para um método, ou seja, podemos permitir que uma classe seja herdada e impedir que um
método seja sobrescrito, ou seja, podemos impedir que façam override em métodos. A única
observação é que eles já precisam ser sobrescritos, ou seja, precisam estar presentes em alguma subclasse. Vou
demonstrar com exemplos. A Subclasse1 também possui o método calculaPrecoParcelado,
sobrescrito da Superclasse, vejam:
![Classes Seladas - Programação Orientada a Objetos - POO]( ../../assets/img/cursos/poo/14-Classes_Seladas_POO5.png)
Ela está herdando de Superclasse e efetuando o override no método calculaPrecoParcelado.
![Classes Seladas - Programação Orientada a Objetos - POO]( ../../assets/img/cursos/poo/14-Classes_Seladas_POO6.png)
Agora vamos selar o método calculaPrecoParcelado em Subclasse1, para impedir que Subclasse2 possa sobrescrevê-lo.
![Classes Seladas - Programação Orientada a Objetos - POO]( ../../assets/img/cursos/poo/14-Classes_Seladas_POO7.png)
Agora vou tentar compilar a aplicação:
![Classes Seladas - Programação Orientada a Objetos - POO]( ../../assets/img/cursos/poo/14-Classes_Seladas_POO8.png)
Agora o método calculaPrecoParcelado, presente em Subclasse1 está selado, ou seja,
impedido de ser modificado por uma subclasse, que no caso é a Subclasse2.
Essa é a função das classes e métodos selados. Simples, mas muito importante!
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Recorde de patentes
A IBM detém o recorde de patentes em um único ano, atingindo a marca de 4186 registros no ano de 2008. Clique aqui e saiba mais sobre esta gigante do mundo da tecnologia.
PDP-1
O primeiro computador a conseguir rodar o jogo Spacewar era o PDP-1, que custava 120 mil dólares e pertencia ao Massachusetts Institute of Technology. O jogo demorou 200 horas para ser desenvolvido, em 1962, e seu criador foi um cientista da computação chamado Steve Russel.
Duck Hunt
Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".
Street Fighter 2
Street Fighter 2, lançado para o Super Nintendo no início dos anos 90, foi o principal responsável pelo aumento nas vendas deste console. Graças ao sucesso do título nos Arcades e à perfeita adaptação ao console, muitos consumidores adquiriram o SNES para jogarem o título em casa. Saiba mais.
Ábaco
O ábaco é o dispositivo de cálculo mais antigo construído e conhecido pelo homem. Suas formas mais primitivas datam de 400 a.C. e eles foram encontrados na China e na Babilônia. Para saber mais sobre a história dos computadores, clique aqui.
Cuidados com o notebook
Utilizar seu notebook em camas, sofás ou qualquer superfície macia pode obstruir as entradas e saídas de ar, elevando a temperatura e provocando danos a diversos componentes. Utilize-o sempre sobre uma superfície rígida. Saiba mais aqui.
Asteroids
O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.
Galaxy Game
As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.
Final Fantasy
O famoso título Final Fantasy, da Square Enix, tem este nome exatamente porque se tratava da última esperança da empresa, que estava à beira da falência quando o lançou. Clique aqui e conheça detalhes dessa história.