LLD - Behavioral Design Patterns — Part 1
Given the following Java code snippet:
abstract class DataAnalysis {
final void analyze() {
collectData();
analyzeData();
reportResults();
}
abstract void analyzeData();
void collectData() { System.out.println("Collecting data"); }
void reportResults() { System.out.println("Reporting results"); }
}
class SalesAnalysis extends DataAnalysis {
void analyzeData() { System.out.println("Analyzing sales data"); }
}
public class Main {
public static void main(String[] args) {
DataAnalysis analysis = new SalesAnalysis();
analysis.analyze();
}
}What will be the output when the main method is executed?