Você está na página 1de 7

Aspectos de programao

Um programa a implementao de um algoritmo em uma linguagem de programao. O algoritmo precisa ser bem definido do incio ao fim, tendo comandos ordenados e finitos capazes de produzirem um resultado perceptvel. Para programar bem deve-se fazer um algoritmo apropriado e ter um conhecimento lxico, sinttico e semntico da linguagem de programao a ser utilizada. No campo lxico as linguagens de programao permitem que o programador crie novas palavras, desde que se respeite as regras nativas da linguagem. J a sintaxe habilita o programador a exercer sua funo de implementar o algoritmo atravs do uso de smbolos, termos e palavras que formaro expresses vlidas. Finalmente, a semntica a representao do resultado observvel do algoritmo implementado na mquina pelo programador. Estrutura, Compilao e Execuo Um programa um texto (chamado de programa fonte) que possui comandos e declaraes necessrias para a implementao de um algoritmo que traduzido para um produto equivalente escrito em comandos binrios (cdigo binrio) os quais so executados pelo computador. O processo de traduo chamado de compilao e posteriormente a ele se produz a ligao do cdigo binrio a outros cdigos para se obter finalmente o programa executvel. O programa executvel carregado na memria e colocado sobre o controle de um ambiente de execuo, que faz com que cada comando seja executado pelo processador. Todo programa deve ter uma estrutura que permita definir seu inicio e fim, de tal forma que o ambiente de execuo possa identificar precisamente o ponto de entrada do programa, isto , o primeiro comando que ser executado e o trmino da execuo. A estrutura de um programa em Java Os programas orientados a objetos so baseados no conceito Classe*. Cada classe contm as declaraes e os comandos que, em conjunto, implementam o algoritmo do programa. Estes comandos so organizados na forma de Mtodos* e devem possuir um mtodo principal que o ponto de incio da execuo, a partir dele os demais mtodos so acionados. Em Java, especificamente, a sua estrutura consiste de um conjunto de unidades de compilao. Cada uma delas contm as especificaes de classes e interfaces, juntamente com as declaraes necessrias para a compilao. Quando compiladas essas unidades geram arquivos com os cdigos binrios referentes s classes e interfaces nelas descritas. A estrutura bsica de uma classe consiste de uma palavra chave class, de um identificador (o nome da classe), e de um corpo que delimitado por chaves e contm opcionalmente declaraes e comandos prprios da classe. Programando em Java Em Java todos os arquivos com os respectivos cdigos podem ser escritos em um editor de texto utilizando UNICODE e terminadas com a extenso .java. Cada arquivo representa uma unidade de compilao, podendo conter uma ou mais especificaes de classes e interfaces.

Em Java temos alguns comandos que nos ajudam na compilao e execuo dos programas, como o comando javac e o comando java. javac: Ele o compilador da linguagem Java. Este comando ao ser executado em um arquivo que contenha o cdigo da linguagem, ir gerar um segundo cdigo contendo o cdigo binrio que utilizado para a execuo do programa. Para compilar seu cdigo digite javac NomeDoArquivo.java. java: O executvel Java a mquina virtual Java (JVM). Ou seja, o programa responsvel pela execuo do cdigo compilado pelo javac. Para fazer uso do comando digite java NomeDoArquivo, para executar um arquivo no deve-se colocar a sua extenso. Comentrios Os comentrios so textos normalmente explicativos que servem para informar tanto o programador que o escreveu quanto outros que venham a utilizar ou somente ler aquele cdigo. Em Java os comentrios podem ser de trs tipos: Uma linha - Utiliza duas barras // marcando seu incio. Exemplo: // tudo aps as barras considerado como comentrio Mltiplas linhas - Utiliza barra asterisco no incio /* e asterisco barra no fim */. Exemplo: /* comentrio inicial e final de multiplas linhas */ Documentao - Semelhante ao de mltiplas linhas mas com propsito de documentar o cdigo. Iniciado por /**e finalizado com */. Exemplo: /** comentrio de documentao pode conter diversas linhas */

Lio 4 - Tipos de dados Variveis


Na linguagem Java todas as variveis tm seus tipos de dados definidos. Os tipos de dados definem quais so os valores que uma varivel pode armazenar e quais operaes pode executar. Esses tipos bsicos so os mesmos para qualquer ambiente de programao Java, por se tratar de uma linguagem portvel. As variveis locais so declaradas no corpo de um mtodo*, existindo somente durante a atividade dele. J as variveis de instncia e variveis de classe so declaradas ambas no corpo de uma classe*, mas as de instncia especificam atributos prprios de cada objeto da classe, enquanto que as de classe especificam atributos comuns a todos objetos da classe. Existem tambm as variveis paramtricas que so declaradas como tratadoras de exceo, construtoras e parmetros formais de mtodos. So variveis declaradas na especificao de um mtodo, estas variveis possuem algum valor que ser usado no mtodo invocado. Seu uso semelhante ao das variveis locais podendo ser modificado o seu valor. As variveis paramtricas so criadas quando chamadas ao mtodo que pertencem e existem s durante a execuo do mtodo. Existem duas maneiras de atribuir os valores s variveis paramtricas, passagem de argumento por valor ou por referncia. Passagem de argumentos por valor A passagem por valor feita com a chamada a um mtodo e os parmetros reais utilizados na chamada so avaliados, produzindo valores que so atribudos aos parmetros formais correspondentes. Falando de forma mais simplificada, o mtodo cria uma "cpia" dos valores dos argumentos para que sejam utilizados somente dentro do mtodo. Portanto, por mais que se alterem esses valores, eles no afetaro as variveis externas ao mtodo. Passagem de argumentos por referncia Ao se invocar uma funo ou procedimento, as variveis paramtricas armazenam uma referncia aos parmetros reais em vez de uma cpia do valor, como feito na passagem por valor. Mas, este tipo de passagem em Java no implementada, isto acontece porque em Java no existem ponteiros, existem objetos. Assim, toda varivel do tipo "objeto" na realidade uma referncia para aquela instncia do objeto. Mais simplificadamente, os argumentos passados por referncia tero seu valor alterado dentro e fora do mtodo, pois no feita uma cpia daquela varivel. Obs: Variveis do tipo de dados primitivo so passadas por valor. Objetos (o contedo) no so passados diretamente para mtodos. Em vez disso, so passados aos mtodos referncias a objetos. As prprias referncias tambm so passadas por valor. Quando um mtodo recebe uma referncia a um objeto, o mtodo pode manipular o objeto diretamente. *Os conceitos de Mtodo e Classe sero abordados em prximas lies.

Escopo de variveis O escopo de uma varivel a parte do programa no qual pode-se diretamente referenci-la. Uma varivel local tem seu escopo com alcance somente dentro do bloco onde ela foi declarada. Bloco este que em Java delimitado por chaves { }. As variveis de instncia e de classe tm escopo com alcance em todo o corpo da classe em que foram declaradas. Tipos bsicos Existem oito tipos primitivos em Java, todo o resto objeto. Estes tipos ficaram na linguagem pela sua velocidade de interao e, por isso, no foram transformados em Objetos. Como no so objetos a sua declarao j cria a varivel em memria no necessitando de construtores. Inteiros Tipo byte short int Tamanho 8 bits 16 bits 32 bits Valor de -128 a 127 de -32.768 a 32.767 de -2.147.483.648 a 2.147.483.647 de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807

long

64 bits

Reais ou ponto flutuante Tipo float Tamanho 32 bits Valor -1.40239846E-45 a 3.40282347E+38 (com nove dgitos significativos de preciso) double 64 bits -4.9406564584124654E 324 a 1.79769313486231570E+ 308 (com 18 dgitos significativos de preciso)

Outros tipos Tipo char boolean Valor 16 bits 8 bits Tamanho 0 a 65535 true ou false Descrio Um caractere Valor booleano(V ou F)

OPERADORES Executam alguma funo sobre os operandos. Existem operadores unrios que requerem s um operando e operadores binrios e ternrios que requerem dois e trs operandos respectivamente. Depois de ser executada uma determinada funo um operador retorna um valor, sendo que esse valor e o tipo de retorno dependem do operador e de seus operandos.

Operadores binrios Operador + (Adio) Operadores unrios - Operador (Subtrao) Uso X+Y X-Y Uso Descrio Soma X e Y Subtrai Y de X Descrio Utiliza o valor de X antes de Multiplica X por Y fazer o incremento. Divide X de Y Incrementa antespor utilizar o valor de X. Retorna verdadeiro se Resto da diviso de X por Y Utiliza ovalor de X antes de X maior que Y. fazer o decremento. X maior ou igual a Y. Decrementa antes de utilizar o valor de X. X menor que Y. X menor ou igual a Y.

++ * Incrementar o mesmo que somar 1. X++ * (Multiplicao) X*Y * Decrementar o mesmo que subtrair 1. / (Diviso) Operadores condicionais e relacionais X / Y ++ ++X Operador % (Resto) -> Operadores binrios condicionais >= -< QUESTO 5 - TIPOS DE DADOS XUsoY % XX--Y > X >= Y --X X<Y

Considerando<= como verdadeira as informaesY X <= abaixo:

"x" uma varivel do tipo "int"; o mtodo esttico "System.out.print(x)" imprime o valor atual de x. X e Y so iguais. == X == Y Pergunta: != X != Y X e Y so diferentes. Qual a diferena entre os comandos "System.out.print(x++)" e "System.out.print(+ +x)"? A sua resposta : "System.out.print(x++)" imprime o valor atual de x e depois incrementa 1 no seu valor, enquanto que "System.out.print(++x)" incrementa 1 no valor de x e imprime seu valor j incrementado. Resposta Correta!

Operador &&

Uso X && Y

Retorna verdadeiro se X e Y verdadeiros, avalia condicionalmente Y(se X falso, no avalia Y). X ou Y verdadeiro, avalia condicionalmente Y(se X verdadeiro, no avalia Y).

||

X || Y

! &

X!Y X&Y

X falso. A operao "e" bit-a-bit entre X e Y resulta em valor diferente de zero, sempre avalia X e Y.

X|Y

A operao "ou" bit-a-bit entre X ou Y resulta em valor diferente de zero, sempre avalia X e Y.

X^Y

A operaao "ou exclusivo"(XOR) bit-a-bit entre X e Y resulta em valor diferente de zero, sempre avalia X e Y.

Você também pode gostar