Interface e Herança - Métodos em um e atributos no outro?

Boa tarde! Vamos direto ao ponto. Suponhamos que eu precise criar várias classes que derivam da superclasse Carro. Os métodos comuns eu posso fazer com uma interface extremamente simples, quanto a isso não há dúvida. Mas e os atributos? Uma interface seria muito útil pra métodos comuns como liga(), desliga(), buzina(), abrePorta(). Mas todo carro (nesse caso) tem pneus, portas, lataria, motor. O que é aconselhável / prático? Criar uma superclasse abstrata pra criar vários carros através dela? Exemplo abaixo:

abstract class Carro {
  String nome, marca, cor; //até aqui os atributos me servem bem com herança de classe
  Boolean ligado = false;
  
  /*a partir daqui começa a ficar tenso, porque terei que reescrever todos os métodos a partir da necessidade de cara carro
    o que não ia acontecer se pudesse usar uma interface nesse caso. Mas ela não guarda atributos *LOOP ETERNO NA MINHA CABEÇA rs*
  */
  boolean liga() {
    if (ligado == false) {
      ligado = true;
    }
    return true;
  }

  //E por aí vai....
}

Espero que tenham conseguido me compreender.
Abraço.

Não sei se é isso que você gostaria… segue exemplo:

abstract class Carro implements MinhaInterface {

    String nome, marca, cor; //até aqui os atributos me servem bem com herança de classe  
    Boolean ligado = false;

    @Override
    public boolean liga() {
        if (ligado == false) {
            ligado = true;
        }
        return true;
    }
    //E por aí vai....  
}
interface MinhaInterface {
    
    public boolean liga();
    
    public boolean desliga();
    
}

Cara, esse é o típico caso em que não compensa você utilizar interface. Crie uma classe abstrata Carro e seja feliz.

Entendi surfzera. Cria uma interface, depois cria uma classe abstrata que implementa a interface criada. Acho que essa é uma boa saída, pois além de reunir os atributos em comum dos carros através de uma classe abstrata(o que não é possível utilizando apenas interfaces), implementa a interface necessária pra fazê-lo funcionar direito. Acho que isso vai me servir bem, apesar de ser apenas pra estudo hehe.

rmendes08 fico meio traumatizado depois de ver o que muitos livros falam sobre herança de classe, por isso busquei essa saída de combinar uma interface com uma classe abastrata.