Apresenta os fundamentos da computação necessários para se entender como os programas são executados em um computador e discute os conceitos da orientação a objetos sob o ponto de vista da programação, mostrando como os objetos são representados por estruturas armazenadas na memória, como são referidos e como podem ser usados para executar suas operações. Os fundamentos são tratados de modo rigoroso, e a programação, utilizando a linguagem Java, dá ênfase ao desenvolvimento de programas para a verificação de conceitos. Um ponto importante é o estímulo ao uso das especificações em geral e da especificação da linguagem Java em particular. Entendendo os mecanismos básicos da execução de um programa e sabendo ler a especificação de uma linguagem de programação, o leitor estará apto a prosseguir sozinho. Outro ponto que vale ressaltar são os programas usados nos exemplos e exercícios. Eles são propositadamente pequenos. A idéia é elaborar programas como experimentos, para verificar e discutir conceitos. As afirmações relacionadas aos processos computacionais, sejam elas características de uma linguagem específica, sejam decorrentes de limitações da arquitetura da máquina, devem ser passíveis de comprovação através da execução de programas. Mostrar ao leitor como é fácil, na maioria das vezes, elaborar tais programas é talvez a maior contribuição deste livro.