logo

CuriousTab

CuriousTab

Inheritance problems


  • 1. What will be the output of the C#.NET code snippet given below?

    namespace CuriousTabConsoleApplication
    { 
        class Baseclass
        { 
            public void fun()
            { 
                Console.Write("Base class" + " ");
            } 
        } 
        class Derived1: Baseclass
        { 
            new void fun()
            {
                Console.Write("Derived1 class" + " "); 
            } 
        } 
        class Derived2: Derived1
        { 
            new void fun()
            { 
                Console.Write("Derived2 class" + " ");
            }
        }
        class Program
        { 
            public static void Main(string[ ] args)
            { 
                Derived2 d = new Derived2(); 
                d.fun(); 
            } 
        } 
    }

  • Options
  • A. Base class
  • B. Derived1 class
  • C. Derived2 class
  • D. Base class Derived1 class
  • E. Base class Derived1 class Derived2 class
  • Discuss
  • 2. Which of the following are reuse mechanisms available in C#.NET?

    1. Inheritance
    2. Encapsulation
    3. Templates
    4. Containership
    5. Polymorphism

  • Options
  • A. 1, 4
  • B. 1, 3
  • C. 2, 4
  • D. 3, 5
  • Discuss
  • 3. How can you prevent inheritance from a class in C#.NET?

  • Options
  • A. Declare the class as shadows.
  • B. Declare the class as overloads.
  • C. Declare the class as sealed.
  • D. Declare the class as suppress.
  • E. Declare the class as override.
  • Discuss
  • 4. Which of the following statements should be added to the subroutine fun( ) if the C#.NET code snippet given below is to output 9 13?

    class BaseClass
    {
        protected int i = 13;
    }
    class Derived: BaseClass
    {
        int i = 9; 
        public void fun()
        {
            // [*** Add statement here ***]
        } 
    }

  • Options
  • A. Console.WriteLine(base.i + " " + i);
  • B. Console.WriteLine(i + " " + base.i);
  • C. Console.WriteLine(mybase.i + " " + i);
  • D. Console.WriteLine(i + " " + mybase.i);
  • E. Console.WriteLine(i + " " + this.i);
  • Discuss
  • 5. Which statement will you add in the function fun() of class B, if it is to produce the output "Welcome to CuriousTab.com!"?

    namespace CuriousTabConsoleApplication
    { 
        class A
        {
            public void fun()
            {
                Console.Write("Welcome");
            } 
        } 
        class B: A
        {
            public void fun()
            {
                // [*** Add statement here ***]
                Console.WriteLine(" to CuriousTab.com!");
            } 
        } 
        class MyProgram
        { 
            static void Main (string[ ] args)
            { 
                B b = new B(); 
                b.fun();
            } 
        } 
    }

  • Options
  • A. base.fun();
  • B. A::fun();
  • C. fun();
  • D. mybase.fun();
  • E. A.fun();
  • Discuss
  • 6. Which of the following statements are correct about the C#.NET code snippet given below?

    namespace CuriousTabConsoleApplication
    { 
        class index
        {
            protected int count;
            public index()
            {
                count = 0;
            }
        }
        class index1: index
        {
            public void increment()
            {
                count = count +1;
            }
        }
        class MyProgram
        {
            static void Main(string[] args)
            {
                index1 i = new index1(); 
                i.increment(); 
            }
        }
    }
    1. count should be declared as public if it is to become available in the inheritance chain.
    2. count should be declared as protected if it is to become available in the inheritance chain.
    3. While constructing an object referred to by i firstly constructor of index class will be called followed by constructor of index1 class.
    4. Constructor of index class does not get inherited in index1 class.
    5. count should be declared as Friend if it is to become available in the inheritance chain.

  • Options
  • A. 1, 2, 5
  • B. 2, 3, 4
  • C. 3, 5
  • D. 4, 5
  • E. None of these
  • Discuss
  • 7. What will be the size of the object created by the following C#.NET code snippet?

    namespace CuriousTabConsoleApplication
    { 
        class Baseclass
        {
            private int i; 
            protected int j; 
            public int k;
        }
        class Derived: Baseclass
        {
            private int x; 
            protected int y; 
            public int z;
        }
        class MyProgram
        { 
            static void Main (string[ ] args)
            { 
                Derived d = new Derived();
            } 
        } 
    }

  • Options
  • A. 24 bytes
  • B. 12 bytes
  • C. 20 bytes
  • D. 10 bytes
  • E. 16 bytes
  • Discuss
  • 8. Which of the following should be used to implement a 'Has a' relationship between two entities?

  • Options
  • A. Polymorphism
  • B. Templates
  • C. Containership
  • D. Encapsulation
  • E. Inheritance
  • Discuss
  • 9. Which of the following statements is correct about the C#.NET program given below?

    namespace CuriousTabConsoleApplication
    {
        class Baseclass
        { 
            int i;
            public Baseclass(int ii)
            {
                i = ii;
                Console.Write("Base "); 
            } 
        } 
        class Derived : Baseclass
        {
            public Derived(int ii) : base(ii)
            {
                Console.Write("Derived ");
            } 
        } 
        class MyProgram
        { 
            static void Main(string[ ] args)
            { 
                Derived d = new Derived(10);
            } 
        } 
    }

  • Options
  • A. The program will work correctly only if we implement zero-argument constructors in Baseclass as well as Derived class.
  • B. The program will output: Derived Base
  • C. The program will report an error in the statement base(ii).
  • D. The program will work correctly if we replace base(ii) with base.Baseclass(ii).
  • E. The program will output: Base Derived
  • Discuss
  • 10. Which of the following should be used to implement a 'Like a' or a 'Kind of' relationship between two entities?

  • Options
  • A. Polymorphism
  • B. Containership
  • C. Templates
  • D. Encapsulation
  • E. Inheritance
  • Discuss

First 2 3