I don't really know if I used interfaces or not but I have 0 reputation and I wanted to provide a solution to your answer that wasn't already posted (as if I could have created those anyway).
There's only one class so I don't know if that counts as inheritance?
But you have to construct a switch statement for each type of dice roll you want.
public class Dice{
private int whoodat; //whoodat is the result of the rolls for each Dice instance
public int roll (int s, int dieType){
float low = 1;
float high = 4;
//assuming 4 sided die are lowest conventional die size
switch(dieType){
case 1: low = s/2; high = s; break;
case 2: low = 0; high = s/2; break;
case 3: low = 1; high = s; break;
default: low = 1; high = s; break;
}
int view = (int) processing.core.PApplet.map(
((float)Math.random()), ((float)0.0), ((float)1.0), low, high);
return view;
}
//Roll method that accepts parameters from a Dice constructor
//and does the work you want for weighting a die.
public Dice(int maxInt, int dieType){
super();
whoodat = roll(maxInt, dieType);
System.out.println(whoodat);
}
//Constructor to create each Dice object. You must pass in the max sides of
//the dice and the type of dice you want to roll (how it's weighted).
public static void main(String[] args){
Dice jobby = new Dice(4000, 1);
Dice cappy = new Dice(9000, 2);
Dice pappy = new Dice(20, 3);
//This is jobby cappy and pappy, testers for the program.