I have a base class called Tiger

```
class Tiger implements Attack{
@Override
public void pounce(int intensity){
}
@Override
public void threatLevel(int level){
}

```

}

Attack interface:

```
Interface Attack{
void pounce(int intensity);
void threatLevel(int level);
 }

```

Another subclass SiberianTiger

```
class SiberianTiger extends Tiger{
public void setupSiberianTiger(int intensity,int level){
  pounce(intenisty);
  threatlevel(level);
}

```

}

```
public static void main(){
Attack attack =new SiberianTiger();
//setup the Siberian Tiger meow >.<
((SiberianTiger)attack).setupSiberianTiger(4,5);
}

```

So my question is it a good design decision to initialize the SiberianTiger instance the way I am doing. How can I improve upon it.  

((SiberianTiger)attack).setupSiberianTiger(4,5);