C#.NET — Does the this reference exist for instance (non-static) method calls?

Difficulty: Easy

Correct Answer: True

Explanation:

Introduction / Context:The keyword this refers to the current instance in an instance (non-static) method. Understanding when this exists is crucial to reasoning about members and overload resolution.

Given Data / Assumptions:

  • “Non-shared” means non-static (instance) in C# terminology.
  • Static (shared) methods do not have an instance and thus no this.

Concept / Approach:When an instance method is invoked, the runtime passes a hidden reference to the target object as this, enabling access to instance fields, properties, and other methods.

Step-by-Step Solution:

Call an instance method: obj.Member(). A hidden argument is the reference to obj, available inside as this.In static methods, no this is available because there is no specific instance bound.

Verification / Alternative check:Inside a static method, referencing this produces a compile-time error; inside an instance method, this compiles and works.

Why Other Options Are Wrong:False would contradict the C# object model for instance methods.

Common Pitfalls:Confusing static context (no this) with instance context (has this).

Final Answer:True

More Questions from Classes and Objects

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion