The Decorator Pattern attaches additional responsibilities to an object dynamically. Decorators provide a flexible alternative to subclassing for extending functionality.
1. ArrayIndexOutOfBoundsException
Thrown when attempting to access an array with an invalid index value (either negative or beyond the length of the array). Example :
int[] ia = new int[]{ 1, 2, 3}; // ia is of length 3.
System.out.println(ia[3]); //exception !!!
2. ClassCastException
Thrown when attempting to cast a reference variable to a type that fails the IS-A test. Example :
Object s = “asdf”;
StringBuffer sb = (StringBuffer) s; //exception at runtime because s is referring to a String.
3. NullPointerException
Thrown when attempting to call a method or field using a reference variable that is pointing to null. Example :
String s = null;
System.out.println(s.length()); //exception!!!
4. ExceptionInInitializerError
Thrown when any exception is thrown while initializing a static variable or a static block. Example :
public class X { int k = 0;
static{
k = 10/0; //throws DivideByZeroException but this is wrapped into a
//ExceptionInInitializationError and thrown outside.
}
}
5. StackOverflowError
Thrown when the stack is full. Usually thrown when a method calls itself and there is no boundary condition. Example :
public void m1(int k){
m1(k++); // exception at runtime.
}
6. NoClassDefFoundError
Thrown if the Java Virtual Machine or a ClassLoader instance tries to load in the definition of a class (as part of a normal method call or as part of creating a new instance using the new expression) and no definition of the class could be found. The searched-for class definition existed when the currently executing class was compiled, but the definition can no longer be found. Example :
Object o = new com.abc.SomeClassThatIsNotAvailableInClassPathAtRunTime(); // exception at runtime.
Exceptions thrown by Application Programmer
1. IllegalArgumentException
Thrown when a method receives an argument that the programmer has determined is not legal. Example:
public void processData(byte[] data, int datatype)
{
if(datatype != 1 || datatype != 2) throw new IllegalArgumentException();
else …
}
2. IllegalStateException
Signals that a method has been invoked at an illegal or inappropriate time. In other words, the Java
environment or Java application is not in an appropriate state for the requested operation. Note that this is
different from IllegalMonitorStateException that is thrown by JVM when a thread performs an operation
that it is not permitted to (say, calls notify(), without having the lock in the first place). Example:
Connection c = …
public void useConnection()
{
if(c.isClosed()) throw new IllegalStateException();
else …
}
3. NumberFormatException
It extends from IllegalArgumentException. It is thrown when a method that converts a String to a number
receives a String that it cannot convert. Example:
Integer.parseInt(“asdf”);
4. AssertionError
Thrown to indicate that an assertion has failed i.e.when an assert statement’s boolean test expression returns false. Example: private void internalMethod(int position)
{
assert (position<100 && position >0) : position;
}
The Strategy Pattern defines a family of algorithms, encapsulate each one, and makes them interchangeable. Strategy lets the algorithm vary independently from clients that use it.
Create system using composition gives you a lot more flexibility. Not only does it let you encapsulate a family of algorithms into their own set of classes, but it also lets you change behavior at runtime.
The Observer Pattern defines a one-to-many dependency between objects so that when one object changes state, all of its dependents are notified and updated automatically.
Descer de bike os 28,5km da estrada de paralelepípedos e depois subi-los novamente.
Tem alguns meses que não ando de MTB e será a façanha, começar com o pé direito o Ano de 2012!
Não tenho o objetivo de fazer correndo. Hoje é curtir e andar com calma. A estrada e a serra é perigosa e para quem está de bicicleta nem se fala. Depois fazer o esforço necessário para subir.
Realmente, espero paisagens deslumbrantes e passar uma tarde no meio da natureza. Tudo bem, com alguns carros enchendo o saco, mas, nem tudo é perfeito!
Quem sabe, rola até um banho em um dos rios que corta a estrada?
Sempre gostei de exercícios que trabalham várias musculaturas do corpo, e a Roda de Exercícios é perfeita nesse quesito. O treinamento com a roda é um Treinamento Funcional excelente, mas como toda forma de exercício, merece atenção.
Falo positivamente porque comecei hoje e deu para notar o trabalho, que considerei eficiente.
Sim, é um exercício difícil. Para fazer uma boa execução, busquei alguns vídeos no youtube. Não que os vídeos postados sejam com a melhores execuções possíveis, mas tem alguns que vemos algum fundamento.
O 1º Vídeo foi o que mais gostei. Objetivo e rápido!
Na verdade, não dei conta de chegar com toda a extensão mostrada no vídeo. É um dos meus objetivos! Vamos ver depois de 2 ou 4 semanas, rs.
Um passo que não achei legal foi que ele solta muito a força quando a roda está próximo ao corpo, pois ao meu ver, um bom trabalho consiste principalmente em não relaxar o abdômen quando estiver trabalhando-o.
O 2º Vídeo é de uma mulher trabalhando e achei excelente a sua execução!
Da para notar a diferença entre níveis do 1º e 2º vídeo. Então é trabalhar para chegar lá!
Para começar, aqueci meu abdômen com uma leve série e depois peguei no batente.
Fiquei impressionado com o imenso esforço necessário para brincar com a Roda. Se a pessoa estiver com muito tempo sem trabalhar o abdominal e a lombar, esqueça! Temos os nossos níveis e temos que mensurá-los, então vá com calma.
Os músculos trabalhados são o abdômen e lombar principalmente, braços, peito e costas levemente.
Achei que o exercício trabalha bastante o abdômen, mas o foco é a região lombar. É necessário exercitá-la porque é a que suporta a maior carga em nosso dia a dia e mantêm nossa postura adequada.
O 3º Vídeo, é um animal com um nível mais elevado.
Por favor, não tente colocar uma anilha em cima do seu corpo porque vai dar *****, rs. Só não colocar o joelho no chão e fazer com todo o apoio nos pés. Sinta a diferença.
Estou relatando o meu primeiro dia realizando o exercício.
Achei eficiente e interessante. Daqui 1 mês relatarei os benefícios.
Se por acaso tiver algo a complementar, deixe os comentários.
Dos vários blogs que já tive, não consegui levar nenhum a sério.
Esse mesmo, marcoscarvalho.wordpress.com, foi esquecido durante anos! Até por curiosidade, a data de inscrição no wordpress.com foi junho/2006.
Conversando com um amigo, ele deu a luz que faltava no fim do túnel.
"O blog é para não esquecer das minhas coisas". Ta aí, é o que eu quero!
Na verdade, esse post é para vocês senhores, mas o blog não.
Nunca consegui manter um blog porque não era o meu perfil. Mas agora vou manter esse blog para lembrar das coisas, das viagens, dos esportes que pratico, dos meus sofrimentos com informática.
O que vocês ganharão com tudo isso?
Se tiver algo de interessante para vocês, estará no lugar certo!