logo

CuriousTab

CuriousTab

Polymorphism problems


  • 1. Which of the following modifier is used when a virtual method is redefined by a derived class?

  • Options
  • A. overloads
  • B. override
  • C. overridable
  • D. virtual
  • E. base
  • Discuss
  • 2. In order for an instance of a derived class to completely take over a class member from a base class, the base class has to declare that member as

  • Options
  • A. new
  • B. base
  • C. virtual
  • D. overrides
  • E. overloads
  • Discuss
  • 3. Which of the following statements is correct?

  • Options
  • A. Static methods can be a virtual method.
  • B. Abstract methods can be a virtual method.
  • C. It is necessary to override a virtual method.
  • D. When overriding a method, the names and type signatures of the override method must be the same as the virtual method that is being overriden.
  • E. We can override virtual as well as non-virtual methods.
  • Discuss
  • 4. Which of the following statements are correct?

    1. All operators in C#.NET can be overloaded.
    2. We can use the new modifier to modify a nested type if the nested type is hiding another type.
    3. In case of operator overloading all parameters must be of the different type than the class or struct that declares the operator.
    4. Method overloading is used to create several methods with the same name that performs similar tasks on similar data types.
    5. Operator overloading permits the use of symbols to represent computations for a type.

  • Options
  • A. 1, 3
  • B. 2, 4
  • C. 2, 5
  • D. 3, 4
  • Discuss
  • 5. Which of the following unary operators can be overloaded?

    1. true
    2. false
    3. +
    4. new
    5. is

  • Options
  • A. 1, 2, 3
  • B. 3, 4, 5
  • C. 3 only
  • D. 5 only
  • Discuss
  • 6. A derived class can stop virtual inheritance by declaring an override as

  • Options
  • A. inherits
  • B. extends
  • C. inheritable
  • D. not inheritable
  • E. sealed
  • Discuss
  • 7. Which of the following operators cannot be overloaded?

    1. true
    2. false
    3. new
    4. ~
    5. sizeof

  • Options
  • A. 1, 3
  • B. 2, 4
  • C. 3, 5
  • D. All of the above
  • Discuss
  • 8. Which of the following statement is correct about the C#.NET code snippet given below?

    public class Sample
    {
        public int x;
        public virtual void fun()
        { }
    }
    public class DerivedSample : Sample
    {
        new public void fun()
        { }
    }

  • Options
  • A. DerivedSample class hides the fun() method of base class.
  • B. The DerivedSample class version of fun() method gets called using Sample class reference which holds DerivedSample class object.
  • C. The code replaces the DerivedSample class version of fun() method with its Sample class version.
  • D. It is not possible to hide Sample class version of fun() method without use of new in DerivedSample class.
  • Discuss
  • 9. Which of the following keyword is used to change the data and behavior of a base class by replacing a member of a base class with a new derived member?

  • Options
  • A. new
  • B. base
  • C. overloads
  • D. override
  • E. overridable
  • Discuss
  • 10. Which of the following statements is correct?

  • Options
  • A. When used as a modifier, the new keyword explicitly hides a member inherited from a base class.
  • B. Operator overloading works in different ways for structures and classes.
  • C. It is not necessary that all operator overloads are static methods of the class.
  • D. The cast operator can be overloaded.
  • Discuss

First 2