Courseiva

PCPP1 · domain

Advanced Object Oriented Programming

Practise RAM questions covering identification, installation, speeds, dual-channel, and troubleshooting for the PCPP1 exam.

52 questions11 easy24 medium17 hard

Focused practice

Practice Advanced Object Oriented Programming questions

Scored sessions drawing only from this domain — pick a length below.

Start 20-question practice test →

What this domain covers

What to know about Advanced Object Oriented Programming

RAM tests your ability to identify, install, and troubleshoot memory types, speeds, and configurations for PCs.

Identifying DDR3 vs DDR4 vs DDR5 physical and electrical differences

Matching RAM speed (MHz) to motherboard and CPU support

Calculating total memory capacity from module size and slots

Troubleshooting common RAM errors like beep codes and blue screens

Why learners struggle

Why Advanced Object Oriented Programming questions are commonly missed

RAM questions are commonly missed because learners confuse physical form factors (DIMM vs SO-DIMM) and fail to distinguish between memory speed (MHz) and latency (CL).

  • ·DIMM vs SO-DIMM — desktop vs laptop form factor confusion
  • ·DDR3 vs DDR4 vs DDR5 — notch position and voltage differences
  • ·MHz vs CL — speed vs latency trade-offs in performance
  • ·Single-channel vs dual-channel — bandwidth impact misconception
  • ·ECC vs non-ECC — error correction support in servers vs desktops
  • ·32-bit vs 64-bit — maximum addressable RAM limit

Watch out for

Common Advanced Object Oriented Programming exam traps

  • Confusing DDR3 and DDR4 notch positions and voltage requirements
  • Assuming dual-channel requires identical size modules only
  • Mixing ECC and non-ECC RAM in a single system
  • Forgetting that 32-bit OS limits usable RAM to 4 GB

Question index

All Advanced Object Oriented Programming questions (52)

Click any question to see the full explanation, or start a practice session above.

1

Which of the following describes the purpose of the __slots__ attribute in a class?

Easy
2

What happens if you use a decorator on a class that returns a modified version of the class?

Hard
3

Which magic method is responsible for providing the informal string representation of an object, typically used for user-facing output?

Easy
4

Which magic method allows an object to behave like a function?

Medium
5

In the context of the Descriptor Protocol, what is the primary difference between a data descriptor and a non-data descriptor?

Hard
6

In the Factory pattern, what should you do if the requested type is unknown?

Medium
7

What is the difference between a class-level variable and an instance-level variable?

Medium
8

When overriding the __getattr__ method, what must you be careful to avoid?

Medium
9

When using a metaclass, how can you access the class attributes during the class definition?

Medium
10

Which TWO of the following are true regarding multiple inheritance in Python?

Medium
11

Which THREE of the following statements are correct about Python metaclasses?

Hard
12

What is the primary risk of using 'getattr' without a default value?

Hard
13

When using the __call__ method to implement a decorator, what does the decorator receive as an argument?

Medium
14

Why does the __init__ method not return anything?

Hard
15

What is the purpose of the 'weakref' module in relation to the Observer pattern?

Hard
16

How do you define a property in a class to make it read-only?

Hard
17

Which magic method is used to control how an instance is displayed when using the print() function?

Easy
18

Which THREE of the following are true about the Python descriptor protocol?

Hard
19

In the context of the Observer pattern, what is the benefit of an event-driven system over a direct-method-call approach?

Medium
20

What is the purpose of the __set_name__ method in descriptors?

Hard
21

Why should you use super() instead of calling the parent class method directly by name?

Medium
22

What is the purpose of the 'type' function when called with three arguments?

Medium
23

What does the @abstractmethod decorator do when applied to a method inside an ABC?

Medium
24

When using abstract base classes (ABCs) from the abc module, what happens if a class inherits from an ABC but fails to implement one of the abstract methods?

Medium
25

You are implementing a Singleton pattern using the __new__ method. Why is it considered best practice to also define a __call__ method in the metaclass or use a decorator instead of just overriding __new__ in the base class?

Medium
26

What is the consequence of not calling super().__init__() in a class with multiple inheritance?

Medium
27

Which magic method is triggered when an object is deleted using the 'del' keyword?

Easy
28

What is the result of applying the @staticmethod decorator to a method inside a class that also defines a metaclass?

Hard
29

What is the effect of setting __slots__ in a parent class on a child class that does not define its own __slots__?

Hard
30

Which THREE of the following are potential pitfalls of the Singleton pattern in Python?

Hard
31

How do you implement the 'Strategy' pattern in Python?

Medium
32

When designing a class hierarchy, what is the best way to prevent a method from being overridden by subclasses?

Medium
33

How do you correctly call a method from a sibling class in a diamond inheritance structure using super()?

Medium
34

Which TWO of the following are correct regarding the 'with' statement in Python?

Medium
35

In the context of the Factory pattern, what does a concrete factory implement?

Medium
36

When implementing the Singleton pattern, what is the advantage of using a module-level instance over a class-based Singleton?

Medium
37

What is the purpose of the __repr__ method?

Easy
38

Why does the 'abc' module provide the 'ABCMeta' metaclass?

Hard
39

Which THREE of the following represent common issues when using __slots__?

Hard
40

You are implementing the Observer pattern. Why should you avoid using a strong reference to the observers in the subject's list?

Medium
41

What is the primary difference between @classmethod and @staticmethod?

Easy
42

Which magic method enables index access (e.g., obj[i])?

Easy
43

Which TWO of the following are true about magic methods?

Medium
44

Which TWO of the following are valid ways to create a singleton in Python?

Medium
45

What happens when you add two objects of a class that implements __add__?

Easy
46

If you define a class with a metaclass that has a custom __call__ method, when is that __call__ method executed?

Hard
47

Which method is used to customize the behavior of the 'in' operator?

Easy
48

Which magic method should you implement to make your objects support the 'with' statement context manager?

Easy
49

Which function is used to check if an object is an instance of a class?

Easy
50

In the context of the Factory pattern in Python, what is a typical benefit of using a registry-based approach instead of a large if-else block?

Medium
51

Consider a class that uses a metaclass to automatically register subclasses in a dictionary. If you want to prevent the base class itself from being registered, how should the metaclass be implemented?

Hard
52

Why might you use the __init_subclass__ hook instead of a metaclass?

Hard

Frequently asked questions

What does the Advanced Object Oriented Programming domain cover on the PCPP1 exam?
RAM tests your ability to identify, install, and troubleshoot memory types, speeds, and configurations for PCs.
How many questions are in this domain?
This page lists all 52 Advanced Object Oriented Programming questions in the PCPP1 question bank. The actual exam draws from this domain proportionally to its weighting in the official exam blueprint.
What is the best way to practise this domain?
Start with a short focused session (10 questions) to identify gaps, then work through explanations. Repeat with a longer session once the weak areas feel solid.
Can I practise only Advanced Object Oriented Programming questions?
Yes — the session launcher on this page filters questions to this domain only. Choose any session length for inline explanations and scoring.
python-pcpp1 PYTHON-PCPP1 advanced object oriented programming Practice Questions