I know that Java has smart/lazy evaluation in this case:
public boolean isTrue() { boolean a = false; boolean b = true; return b || (a &&
Is isATrue() called if isBTrue() returns true?
Yes, both are called.