86 Shares 1767 views

classe abstrata e método: a descrição, características e funcionalidades. O que é diferente da interface classe abstrata

Qualquer um que tenha qualquer pouco de conhecimento em programação, perguntando sobre por que existem classes base abstratas. Qual é o seu propósito? Como criar uma classe abstrata? Quais são as vantagens que eles oferecem na prática? Por que eles são necessários na programação e algumas características da sua aplicação deve levar em conta?


classes abstratas

Então, na programação chamada código de unidade com base nas quais os objetos não podem ser criados. Note-se que esta classe de sucessores não pode ser abstrato. Portanto, a criação de objetos com base neles é bastante possível. Se considerarmos o exemplo de Java, construímos um modelo que podemos descrever os construtores na classe A. Mas, para usá-los, não podemos. O caminho para sair desta situação é a declarar qualquer referência variável. E você precisa ser claramente definida para que ele aponta para um objeto da classe A. Isto é como isso pode ser feito? Isso irá nos ajudar a trazer. Deve-se ter em mente que a classe pai é sempre considerado para ser mais versátil do que o descendente. Em muitas linguagens de programação usada para trazer automaticamente. Mas se não há confiança na presença de um mecanismo tal, então você deve fazer referência explicitamente o objeto.

métodos abstratos

O que são eles? chamada Abstract aqueles métodos que não são implementados nesta classe. Assim, na sequência de parênteses (que lista os argumentos aqui utilizados) não dão abertura moldada (após o que o bloco co- localizado descrição do método), e somente um ponto e vírgula. Assim, neste caso, não há informações sobre o que ele faz. Aqui, a pergunta pode ser feita: "E o método sem implementação?" Afinal, ele não é para ser usado! Claro que, em sala de aula, onde foi descrito, isto não é possível. Mas se considerarmos a situação do ponto de vista de um descendente, ele pode ser chamado. E vai operar em uma descrição específica disponível nesta classe.

Características métodos abstratos

Há limitações em usá-los. Vamos considerar o exemplo da linguagem de programação Java. Há uma exigência se a classe tem pelo menos um tal método, que deve ser abstrato. E em qualquer caso, é apropriado usar uma tal construção? Vamos entender isso com um exemplo de classe animais de estimação. Para começar a entender que não há som que eles são publicados. Portanto, na classe mais geral não está definido sólida implementação do método. Mas o corpo criado que além via blocos para ele. E a seguir, ao criar classe cão, gato ou hamster vai ser prescrito um método único para isso, no âmbito da qual serão divulgadas a todas as funcionalidades.

interface

Na programação criou muitas ferramentas cujo propósito – para ajudar as pessoas a fazer um produto de boa qualidade. E o tema em consideração deve ser dada a este aspecto, e que toda a gente sabe Ao contrário de uma classe abstrata a partir da interface. Assim, a última característica é que ele não pode ter as propriedades e métodos não são definidos corpo. Ao examinar a diferença entre uma classe abstrata a partir da interface, deve habitar mais de um particular. Assim, o primeiro é herdada, enquanto o segundo – é realizada. pessoa inexperiente pode parecer irrelevante. Mas o fato é, que pode ser herdado apenas uma classe, e percebeu – tanto quanto necessário. Isso é o que é diferente da interface da classe abstrata. Java é ainda as características que só pode ser descrito abstrato métodos públicos e constantes estáticas. Mas as mesmas interfaces também pode ser herdada. É necessário salientar que os operadores usados são públicos via pública.

herança múltipla de interfaces

Este recurso não está disponível para as aulas em muitas linguagens de programação (por exemplo, Java consideradas por nós). Isto é devido a uma série de problemas. Como tais ambiguidades indicam que ocorrem em sucessão. Esta foi a razão para a introdução de herança de interface múltipla. Isto resolve parcialmente os problemas existentes, mas não todos. Assim, graças aos princípios de encapsulamento e polimorfismo, interfaces podem ser implementadas com sucesso em diferentes classes de acordo com vários métodos (embora eles vão ter o mesmo nome). Mas não se esqueça sobre os problemas existentes. Então, quando se trabalha com múltiplas interfaces terá que especificar sempre que temos em mente. Além disso, os problemas vão ser e quando você tenta trabalhar com o mesmo nome de duas maneiras – neste caso, eles não serão capazes de tirar vantagem. Portanto, em tais casos, é necessário cuidar da presença das vendas totais.

dados abstrato

Este conceito é fundamental para o programa. Neste caso, sob a abstração da análise independente e compreender a separação da interface e implementação. Vejamos um exemplo. Temos uma televisão, o que é um objeto ou módulo. Ele tem uma interface. Como tal, eles são os controles, bem como som e imagem. A interface mais perfeito é usado, mais confortável a TV em uso. Podemos alternar entre programas pressionando qualquer botão. Neste caso, não há necessidade de pensar sobre os processos físicos na TV. Cuidar deles especialistas, que recolhem o dispositivo. Gostamos de pessoas só estão interessados em propriedades. Voltando à programação, podemos dizer que eles estão em uma interface e implementação similar. Além disso, se uma pessoa está confiante no seu conhecimento, ele pode "remover" cobrir nossa TV hipotética e melhorá-lo. Embora isso possa levar ao sucesso local, na maioria dos casos, o resultado final é negativo. Portanto, a proibição de programação suportada de acesso e para esconder os componentes internos de dados abstratos. O princípio deste mecanismo fornece uma maneira de evitar o ajustamento intencional ou não intencional dos componentes internos. E quando se fala de tipos de dados abstratos, a média de um conjunto de um conjunto de operações que podem ser realizadas sobre eles.

objetos

Já vimos uma classe abstrata e interface em geral e geral. Agora vamos detalhar o nosso conhecimento. Para iniciar objetos prestar atenção. Abaixo deles, em geral, conscientes da realidade ambiental que existe no espaço e no tempo. Mas identificar formalmente os objetos dentro do programa é difícil (com o ponto de vista filosófico e teórico). Portanto, é devido às suas propriedades. Como um exemplo, o seguinte: Um objecto pode ser identificado de forma única (com um nome único), que é em um determinado estado e utiliza um certo padrão de comportamento.

herança

Como a programação é baseada em um hierárquicos construção de relacionamentos de árvore entre os objetos, a questão é levantada sobre o fato de que as propriedades subjacentes dos tipos de bibliotecas de código parental foram transferidos. Sob herança entender a relação quando alguém se repete o comportamento ea estrutura de outra coisa. Na vida comum, ele pode ser encontrado em toda parte. Tal foi adiada e programação elementos relativamente abstratos. Como comparação, o fato de que não existe tal corpo como um pássaro. Este é um nome abstrato. Como uma instância específica levar chá, Nightingale ou pardal. Graças à herança podemos usar as bibliotecas de classe, bem como para desenvolvê-las para um programa particular. Esta ferramenta nos permite criar novos objetos, simultaneamente adicionar ou alterar as propriedades de um já criado. Herdeiro recebe todos os métodos e campos de seu antepassado e adquire seus próprios atributos, se necessário. Devido ao fato de que existem elementos abstratos e o princípio da herança, existem amplas oportunidades para a modificação dentro da programação orientada a objeto. Além disso, ele permite uma abordagem flexível para a solução de problemas. Quando você herdar uma nova classe de dados e funções transferidas.

polimorfismo

É necessário aplicar a mesma função para resolver diferentes tipos de problemas. Neste caso proporciona a presença da possibilidade de uma ação diferente, o conteúdo do que irá depender do tipo de objeto com o qual o trabalho é feito. Sob polimorfismo entender as propriedades dos elementos que têm um pai comum, para realizar semelhante ao significado semântico do problema de diferentes maneiras. Nós fazer uma analogia com os animais. Há ação – para executar. Todos nós sabemos como isso acontece. Mas diferentes animais (leão, elefante, chimpanzé, crocodilo, tartaruga) esta acção será realizada de diferentes maneiras. Neste caso, o seu movimento é desenvolvedor responsável, que se necessário pode causar para um determinado caso uma rotina determinada, algoritmo e implementá-lo com sucesso. Isso é feito usando um conjunto de métodos. Ao mesmo tempo, em cada um programador classe especifica qual o objecto propriedades que lhe são inerentes. Mudar alguma coisa na prole, você pode conseguir ação específica, desejada neste caso. Tal efeito é chamado polimorfismo de objetos. Em geral, uma classe abstrata é uma ferramenta extremamente útil para a programação.