Figuring out class-to-class communication is always a big hurdle, and it shouldn't be. You've certainly already been doing it without realizing it. You'll laugh at yourself later, after you've figured out how simple it is, just as you'd chuckle at watching yourself learn to crawl, walk, etc.
Based on your latest description, I imagine you'd like a class called Fortune that simply contains a collection of all possible fortunes and the methods needed to add, remove, or randomly obtain fortunes from the collection. Then, from an instance of the class, fortunes would be obtained using the appropriate Fortune method. I've roughed out what the Fortune class might look like below.
Your other class would then create an instance of Fortune, let's call it fortune, and then use that to obtain a fortune from the collection at the index that has been randomly generated:
String randomFortune = fortune.getAFortuneAtIndex( randomIndex );
Let us know if you still have questions.
public class Fortune
{
// instance variables
String[] fortunes;
// or it could be an ArrayList:
// List fortunes;
// default constructor
public Fortunes( int numberOfFortunes )
{
// initialize instance variables
fortunes = new String[numberOfFortunes];
// or using the ArrayList
// fortunes = new ArrayList<String>();
} // end default constructor
// and then the necessary methods to maintain the list
// gets a fortune from the collection of fortunes
public String getAFortuneAtIndex( int index )
{
return fortunes[index];
// or using the ArrayList
// return fortunes.get( index );
} // end method getAFortuneAtIndex()
// etc. . . . .
} // end class Fortune