Olá como não achei nem um tópico com esta dúvida em especial (Caso tenha por favor gostaria do link), Gostaria de Saber como funcionam os construtores em Classes Abstratas … Tem ou Não tem? Sei que se ela possuir uma inner Class essa terá pois e apenas uma classe interna.
Obrigado!
Tem sim, toda classe Java tem pelo menos 1 construtor.
Valeuzão mesmo! 
Complementando a pergunta e fazendo outra …
Sendo assim posso instanciar minha classe abstrata?
Mais uma perguntinha capciosa … Interfaces não tem construto então?
Desculpa ai tantas duvidas mas como pode ver são as coisas que são implicitas … eu imagino a resposta de cada uma delas mas só quero a certeza de alguém com experiência …
Obrigado! 
Você não vai instanciar uma classe abstrata (nem pode)
O construtor dela vai ser herdado pelas classes concretas e essas sim você pode instanciar.
Aaaaaaa Beleza Valeuzão! =) Mas e as interfaces?
Não, interfaces não tem construtor.
Em uma visão bem geral, as interfaces definem como a classe que vão implementar elas são acessadas.
Assim, classes que implementem a mesma interface podem ser acessadas da “mesma maneira”, pois terão os mesmos métodos da interface.
Agora sim um Valeuzão final! 
Valeu pelas informações aos dois!
Tanto as classes abstractas como as interfaces não tem construtores.
Porque nenhuma das duas pude ser instanciada (não se pode criar objectos a partir delas).
Por exemplo, Temos a classe Animal, classe Cachorro, classe Galinha e uma classe AnimalTest
então, na classe Animal, declaramos abstract void fazerBarulho();
na classe Cachorro extendemos com extends Animal
e colcoamos na classe Cachorro void fazerBarulho() { System.out.println("Au, Au, Au"); }
e fazemos isso na classe Galinha tbm.
Imagina, se não usarmos a herança, termos que criar uns 100 animais, quantos if(), else if
e tals temos que colocar
para criarmos, todos os cachorros por exemplo latem, então não precisamos declarar a mesma coisa para varios animal que fazem a mesma coisa.
É isso ae!
PS: Na classe AnimalTest colocamos antes do método main public static void barulho(Animal animal) {
animal.fazerBarulho();
}
e depois só declaramos barulho(Nome do animal);
Se alguma coisa estiver errado, me corrijam, sou iniciante em java.
Classes abstratas tb tem construtor. Se vc não declarar um explicitamente, o compilador criará um padrão (sem argumentos).
As classes abstratas não podem ser instanciadas. Porém quando uma classe filha é instanciada, o construtor da classe pai é chamado.
Exemplo:
abstract class Animal {
Animal ( ) {
System.out.println("Animal");
}
}
class Cachorro extends Animal {
Cachorro ( ) {
System.out.println("Cachorro");
}
}
Ao instanciar a classe Cachorro, será impresso:
Animal
Cachorro
Ou seja, o construtor da classe Animal é executado.