Normalmente quem programa com ferramentas (IDEs) orientadas a objetos fica mais a vontade em tal ambiente, mas não leva (principalmente o iniciante) o conceito de orientação a fundo. O programador iniciante arrasta e solta, molda a interface, estimula nos objetos ali arranjados várias funções, mas esquece (ou não sabe) usar os métodos corretos de encapsular, herdar, ou seja, não usa a IDE com todo o seu poder. Aprender orientação a objetos não quer dizer que você tenha que aprender a criar uma interface usando a IDE, o correto é aprender na mão!
No Delphi e em Java eu sei que todos os objetos são herdados do TObject, imaginem todos os objetos visuais e não visuais, eles herdam suas características básicas de uma classe pai, a TObject. Isso depende de cada particularidade da linguagem, e como eu disse, estamos falando da Java.
Uma classe se dá pelo conjunto de características e propriedades, exemplo de um ser humano. Temos a classe principal, um exemplo grotesco! Mas vamos lá ...