Assessment Overview & Difficulty Verdict
The 2025 AS 1 paper presents a balanced, rigorous test of practical Object-Oriented Development skills in C# and Java. With a moderate overall difficulty (rated 3.2/5), the paper transitions from theoretical recall and syntax checks to complex polymorphic class hierarchies and array-of-objects iteration.
Where the Marks Are Won
The majority of marks are concentrated in core object-oriented implementation:
- Objects & Class Architecture (49 marks): Covering standard class design, derived class inheritance syntax (: base in C# / super() in Java), encapsulation with property validation, and polymorphic method overriding.
- Data Structures & Array Traversal (20 marks): Iterating through arrays of reference types, checking for null, and filtering/aggregating attributes.
- Exception Handling (17 marks): Terminology matching and writing defensive methods throwing and handling custom exceptions like InsufficientFundsException.
- Program Control Structures & Parsing (9 marks): Character validation, bounds checking, and string parsing in validLicencePlate().
Key Examiner Pitfalls
Candidates frequently forfeit marks on technical implementation details rather than general logic:
- Constructor Chaining: Forgetting to invoke the superclass constructor using base(...) or super(...) in derived classes.
- Type Checking & Casting: Failing to perform explicit type inspection (e.g. GetType() == typeof(Lunch) or instanceof Lunch) and downcasting when iterating through polymorphic object arrays.
- String & Character Validation: Overcomplicating character condition checks or omitting checks for duplicate characters and string lengths.
- Property Encapsulation: Missing the exception throw or validation logic inside setter properties.
Strategic Revision & Predictions
Prioritise handwriting complete class hierarchies, including constructors, getters/setters with validation, and overridden methods calling base.Method(). Ensure fluency in traversing object arrays and handling I/O operations such as object serialisation streams.