31.
Which is true?

32.
Which of the following is true?
1. A class can extend more than one class.
2. A class can extend only one class but many interfaces.
3. An interface can extend many interfaces.
4. An interface can implement many interfaces.
5. A class can extend one class and implement many interfaces.

33.
What is the result of compiling and running the following code?
class Base{
        public Base(){
                System.out.print("Base");
        }
}
public class Derived extends Base{
        public Derived(){
                this("Examveda");
                System.out.print("Derived");
        }
        public Derived(String s){
                System.out.print(s);
        }
        public static void main(String[] args){
                new Derived();
        }
}

34.
What is the output of the following program code?
abstract class C1{
	public C1(){ 
		System.out.print(1); 
	} 
} 
class C2 extends C1{ 
	public C2(){ 
		System.out.print(2); 
	} 
} 
class C3 extends C2{ 
	public C3(){ 
		System.out.println(3); 
	} 
} 
public class Test{ 
	public static void main(String[] a){ 
		new C3(); 
	} 
}

35.
The concept of multiple inheritance is implemented in Java by
I.   Extending two or more classes.
II.  Extending one class and implementing one or more interfaces.
III. Implementing two or more interfaces.

36.
What will be the output?
interface A{
	public void method1();
}
class One implements A{
	public void method1(){
		System.out.println("Class One method1");
	}
}
class Two extends One{
	public void method1(){
		System.out.println("Class Two method1");
	}
}
public class Test extends Two{
	public static void main(String[] args){
		A a = new Two();
		a.method1();
	}
}

37.
What is the result of compiling and running this program?
class Mammal{
      void eat(Mammal m){
            System.out.println("Mammal eats food");
      }
}
class Cattle extends Mammal{
      void eat(Cattle c){
            System.out.println("Cattle eats hay");
      }
}
class Horse extends Cattle{
      void eat(Horse h){
            System.out.println("Horse eats hay");
      }
}
public class Test{
      public static void main(String[] args){
            Mammal h = new Horse();
            Cattle c = new Horse();
            c.eat(h);
      }
}

38.
Determine output:
class A{
	public void method1(){
		System.out.print("Class A method1");
	}
}
class B extends A{
	public void method2(){
		System.out.print("Class B method2");
	}
}
class C extends B{
	public void method2(){
		System.out.print("Class C method2");
	}	
	public void method3(){
		System.out.print("Class C method3");
	}
}
public class Test{
	public static void main(String args[]){
		A a = new A();
		C c = new C();		
		c.method2();
		a = c;
		a.method3();
	}
}

39.
What will be printed after executing following program code?
class Base{
	int value = 0;
        Base(){
        	addValue();
        }
        void addValue(){
        	value += 10;
        }
        int getValue(){
        	return value;
        }
}
class Derived extends Base{
	Derived(){
		addValue();
	}
	void addValue(){
		value +=  20;
	}
}
public class Test{
	public static void main(String[] args){
		Base b = new Derived();
		System.out.println(b.getValue());
	}
}

40.
What will be the output?
class Parent{
      public void method(){
            System.out.println("Hi i am parent");
      }
}
public class Child extends Parent{
      protected void method(){
            System.out.println("Hi i am Child");
      }
      public static void main(String args[]){
            Child child = new Child();
            child.method();
      }
}