210 likes | 316 Views
Programação. Prof.: Bruno Rafael de Oliveira Rodrigues. Membros Estáticos. Os membros estáticos podem ser utilizados diretamente por meio de suas classes ou de suas instâncias. Sem a necessidade de ser instânciados. Exemplo. Observe o erro. Uma solução. Outra Solução. Constantes.
E N D
Programação Prof.: Bruno Rafael de Oliveira Rodrigues
Membros Estáticos • Os membros estáticos podem ser utilizados diretamente por meio de suas classes ou de suas instâncias. Sem a necessidade de ser instânciados.
Exemplo • Observe o erro.
Constantes • As constantes são definidas pela palavra final. E não podem ter seu valor alterado.
Strings • A Classe String que encontramos no Java SDK representa combinações de caracteres literais. Podem ser representadas utilizando-se um array de caracteres ou simplesmente a Classe String.
Alguns métodos Strings • length() • substring(i) • substring(i,j) • isEmpty() • compateToIgnoreCase(s) • indexOf(s) • lastIndexOf(s) • endsWith(s) • startsWith(s) • charAt(i) • replace(o,n) • trim() • toUpperCase(s) • toLowerCase(s)
Concat O compilador transforma o operador + em chamadas a String.concat
Um objeto (instância de) String nunca é alterado depois de criado
StringBuilder e StringBuffer • São Strings mutáveis. • Os métodos append, insert e replace alteram a própria instância, em vez de criar uma nova
hashCode • Gera automaticamente um OID (ObjectID) único para cada objeto criado
Quando usar o StringBuilder e StringBuffer Quando houver modificações a um objeto String você acabará com vários objetos String abandonados no “String constant pool” (lixo). O StringBuilder e StringBuffer viram para resolver esta questão.
Quando não usar • Não saia colocando StringBuffers e StringBuilder em tudo. Somente quando for necessário que a String seja mutável.
A única diferença entre StringBuilder e StringBuffer é que os métodos do StringBuilder não são sincronizados ou seja não são confiáveis se estiverem usando thread. A Sun recomenda usar o StringBuilder sempre que possível ao ínves do StringBuffer.
Desafio • Usando os métodos da String (indexOfe substringe length) faça uma simples validação para o e-mail, verificando se ele tem ‘@’ e se antes do arroba (nomedousuario) contém pelo menos 3 caracteres e depois também. • Caso não seja um e-mail tratar com exceção. Pesquise como usar os métodos.
Dicas • O indexof retorna o número inteiro de caracteres antes do caracter fornecido. • O substring retorna os caracteres da String de uma posição inicial a uma posição final. • O length conta os caracteres de uma String como se fosse um array.
Leituras Obrigatórias • http://blog.caelum.com.br/revisitando-a-concatenacao-de-strings-stringbuilder-e-stringbuffer/ • http://leonardonunes.wordpress.com/2009/02/10/diferencas-entre-string-stringbuilder-e-stringbuffer/ • http://www.guj.com.br/java/54259-o-que-e-a-classe-stringbuilder-