como Pascal. O espaco delimitado pelos simbolos "{" e "}" e denominado bloco.Observe a classe Livro abaixo:public class Livro { String titulo; String autor; int qtdPaginas; }Isso significa dizer que os atributos titulo, autor e qtdPaginas de um objeto do tipo Livro existirao enquanto o objeto existir, pois seu escopo esta definido para toda a classe. Observe o escopo do metodo escreverQuantidadePaginas() da classe abaixo:public class Livro { String titulo; String autor; int qtdPaginas; public void escreverQuantidadePaginas(){ int quantidade = qtdPaginas; System.out.println("QUANTIDADE DE PAGINAS: "); System.out.println(quantidade);} } O escopo da variavel "quantidade", esta limitado ao metodo escreverQuantidadePaginas(). Isso implica dizer que quando o metodo escreverQuantidadePaginas() for encerrado a variavel "quantidade" ja nao mais podera ser referenciada.Um ponto importante a se ressaltar e que "quantidade" estara acessivel apenas dentro do metodo escreverQuantidadePaginas(). Porem, note que a variavel "qtdPaginas" esta sendo acessada de dentro do metodo escreverQuantidadePaginas(), isso e possivel porque o escopo de "qtdPaginas" foi definido para toda a classe, e o metodo escreverQuantidadePaginas() pertence a classe. Desde ja o atributo "qtdPaginas" pode ser acessado atraves do metodo. Para melhor compreensao vamos instanciar um objeto do tipo Livro: public static void main(String[] args){ Livro livro = new Livro(); } Voce pode livremente acessar os atributos do objeto livro como atribuir valores e exibi-los. public static void main(String[] args){ Livro livro = new Livro(); livro.autor = "Andre Leitao"; livro.qtdPaginas = 100; System.out.println("QUANTIDADE PAGINAS: "); System.out.println(livro.qtdPaginas);} Mas voce nao pode acessar a variavel "quantidade", pois seu tempo de vida esta delimitado pelo escopo do metodo escreverQuantidadePaginas(). Desde ja seria um erro codificar: public static void main(String[] args){ Livro livro = new Livro(); livro.qtdPaginas = 100; livro.quantidade = 20;}A funcionalidade da linha 4 insinua algo como: "atribua o valor 10 a variavel quantidade, que pertence ao objeto livro". E esta atribuicao nao sera possivel porque "quantidade" nao sera reconhecida como um atributo do objeto livro.Observe a figura abaixo:ATRIBUTOS SAO VARIAVEIS?Atributos sao variaveis, pois armazenam valores e estes valores podem ser alterados e/ou obtidos. A diferenca basica entre um atributo e uma variavel local e que o escopo de um atributo e delimitado pelo bloco de sua classe, e o escopo de uma variavel local e delimitado por um outro bloco qualquer.VARIAVEIS LOCAISUma variavel local nao pode ser acessada por toda a classe, apenas dentro do bloco em que foi declarada. Por exemplo:public class CalculadoraParaSoma(){ int operando1; int operando2; public void calcular(){ int resultado = operando1 + operando2; System.out.println("RESULTADO: "); System.out.println(resultado); } }Note que na linha 66 uma variavel local foi declarada. A variavel local resultado recebera a soma dos atributos "operando1" e "operando2". Logo em seguida o resultado da soma e exibido."resultado" nao estara acessivel para toda a classe. Apenas para o metodo em que ela foi declarada. Portanto seria um erro codificar:public static void main(String[] args){ CalculadoraParaSoma calc = new CalculadoraParaSoma(); calc.operando1 = 2; calc.operando2 = 6; calc.resultado = operando1 + operando2;}Ao tentar compilar este codigo, o compilador exibira a seguinte mensagem de erro:"calc.resultado cannot be resolved or is not a field"Isto e, "resultado" nao e reconhecido como membro do objeto calc. "resultado" e acessivel