What will be the output of the following program?
public class GuessIt {
public static void main(String[] args) {
Guess g = new Guess();
g.G();
Guess.CantGuess.ICanGuess.Hai hai = null;
hai.print();
}
}
class Guess {
public void G() {
CantGuess cg = new CantGuess();
}
class CantGuess {
public CantGuess() {
System.out.print("CAB");
}
ICanGuess icg = new ICanGuess();
GetICanGuess gicg = new GetICanGuess();
class ICanGuess {
public ICanGuess() {
System.out.print("BAC");
}
Hai h = new Hai();
public class Hai {
public Hai() {
System.out.print("CBA");
}
public void print() {
System.out.print("print");
}
}
}
class GetICanGuess {
public GetICanGuess() {
System.out.print("ABC");
}
}
}
}