User-Defined Methods

Solutions for Computer Applications, Class 10, ICSE

Assignment Questions

15 questions

Question 1

What is a method? Explain the various parts of a method.

Assignment Questions

Answer:

A method is a named block of code within a class. It executes a defined set of instructions when called from another part of the program. The different parts of the method are access-modifier, type, method-name, parameter-list and method-body.

Question 2

What is a method signature?

Assignment Questions

Answer:

The method name along with the list of parameters used in the method prototype is known as method signature.

Question 3

How do you define and invoke a method?

Assignment Questions

Answer:

The syntax of a method definition is:

[access-modifier] type method-name (parameter-list)
{
    method-body;
}

To invoke a method, write the name of the method and specify the value of arguments of its parameter list. Below example shows the definition and invocation of a method:

public class DisplayMessageDemo {

    public void DisplayMessage() {
        System.out.println("Hello World!");
    }

    public void MyMessage() {
        DisplayMessage();
    }
}

Question 4

What does the return statement do in a method?

Assignment Questions

Answer:

Return statement sends back the value given to it from the called method to the caller method. It also transfers the program control back to the caller method from the called method.

Question 5

What does void signify in the method prototype?

Assignment Questions

Answer:

void in method prototype means that the method does not return any value.

Question 6

Explain the difference between actual and formal parameters.

Assignment Questions

Answer:

The parameters that appear in the method definition are called formal or dummy parameters whereas the parameters that appear in the method call are called actual parameters.

Question 7

Explain static and non-static methods.

Assignment Questions

Answer:

Static methods are created with static keyword in their method prototype as shown below:

public static return-type method-name(parameter-list)
{
    Method-body
}

Static methods can be called directly using class name but they can't access instance variables and non-static methods of the class.

The non-static methods are created without the static keyword in their method prototype as shown below:

public return-type method-name(parameter-list)
{
    Method-body
}

An instance of the class is required to call non-static methods.

Question 8

What happens when an argument is passed by reference?

Assignment Questions

Answer:

In pass by reference, the reference of the actual parameter is passed to the formal parameter. Both actual parameter and formal parameter represent the same memory location so any changes made to the formal parameters get reflected in the actual parameters.

Question 9

When a method has been declared more than once in a class, how does Java determine the overloading?

Assignment Questions

Answer:

Overloading is determined based on the number and type of parameters of the method.

Question 10

What is an ambiguous invocation? Give an example.

Assignment Questions

Answer:

Sometimes there are two or more possible matches in the invocation of an overloaded method. In such cases, the compiler cannot determine the most specific match. This is referred to as ambiguous invocation. It causes a compile time error. For example, the below program will cause a compile time error due to ambiguous invocation:

public class AmbiguousDemo {

    public static double max(double num1, int num2) {
        if (num1 > num2)
            return num1;
        else
            return num2;
    }

    public static double max(int num1, double num2) {
        if (num1 > num2)
            return num1;
        else
            return num2;
    }

    public static void main(String args[]) {
        /*
         * This line will cause a compile time error
         * as reference to max is ambiguous
         */
        System.out.println(max(19, 20));
    }
}

Question 11

Given below are the two method definitions:

  1. public static double Check(double x, double y)
  2. public static double Check(int x, double y)

Which of the two methods is invoked for the following?

  1. double z = Check (6, 5);
  2. double z = Check (5.5, 7.4);
Assignment Questions

Answer:

  1. double z = Check (6, 5); invokes public static double Check(int x, double y)
  2. double z = Check (5.5, 7.4); invokes public static double Check(double x, double y)

Question 12

What is the signature of the following method heading?

public void CoolMethod(int xx, char yy, int zz)

Assignment Questions

Answer:

Signature of this method is:

CoolMethod(int xx, char yy, int zz)

Question 13

Which OOP principle implements function (method) overloading?

Assignment Questions

Answer:

Polymorphism

Question 14

A palindromic prime is a prime number and also palindromic. For example, 131, 313, and 757 are prime numbers and also palindromic prime numbers. Write a program that displays the first 100 palindromic prime numbers.

Assignment Questions

Answer:

public class KboatPalindromicPrime
{
    public static boolean isPrime(int n) {
        int c = 0;
        for (int i = 1; i <= n; i++) {
            if (n % i == 0) {
                c++;
            }
        }
        
        boolean prime = c == 2;
        return prime;
    }

    public static boolean isPalindrome(int n) {
        int num = n, revNum = 0;
        while (num != 0) {
            int digit = num % 10;
            num /= 10;
            revNum = revNum * 10 + digit;
        }

        boolean palin = revNum == n;
        return palin;
    }

    public static void main(String args[]) {
        int x = 1, count = 0;
        while (count < 100) {
            if (isPrime(x) && isPalindrome(x)) {
                count++;
                System.out.println(x);
            }
            x++;
        }
    }
}
Output
BlueJ output of KboatPalindromicPrime.java

Question 15

Differentiate between the following:

  1. Call by value and Call by reference
Assignment Questions

Answer:

Call by valueCall by reference
Values of actual parameters are copied to formal parameters.Reference of actual parameters is passed to formal parameters.
Changes made to formal parameters are not reflected back to actual parameters.Changes made to formal parameters are reflected back to actual parameters.
  1. Pure and Impure methods
Pure methodsImpure methods
Pure methods take objects and/or primitive data types as arguments but does not modify the objects.Impure methods change the state of received objects.
Pure methods doesn't have side effects.Impure methods have side effects.
  1. Simple Method and Overloaded method
Simple MethodOverloaded method
Simple Methods have unique names.In case of Overloaded methods, there are two or more methods with the same name.
We can identify the method being invoked by looking at its name.We need to examine the method's number and type of parameters to determine which method will be invoked.

Multiple Choice Questions

10 questions

Question 1

A method that does not return a value has a ........... return type.

  1. double
  2. class
  3. float
  4. void ✓
Multiple Choice Questions

Answer:

Question 2

A method can return ...........

  1. any number of values
  2. 2 values
  3. only 1 value ✓
  4. 3 values
Multiple Choice Questions

Answer:

Question 3

If a method returns a value, then it must be ...........

  1. of the same data type as defined in its prototype ✓
  2. void type
  3. double type
  4. boolean type
Multiple Choice Questions

Answer:

Question 4

Parameters in the method definition are called ...........

  1. actual parameters
  2. formal parameters ✓
  3. informal parameters
  4. void parameters
Multiple Choice Questions

Answer:

Question 5

The parameters that are passed to the method when it is invoked are called ...........

  1. formal parameters
  2. actual parameters ✓
  3. informal parameters
  4. void parameters
Multiple Choice Questions

Answer:

Question 6

The method that changes the state of an object is known as ...........

  1. pure method
  2. impure method ✓
  3. perfect method
  4. imperfect method
Multiple Choice Questions

Answer:

Question 7

The scope of a local variable is limited to the ...........

  1. Windows
  2. Multiple programs
  3. Class
  4. Method or block it is declared in ✓
Multiple Choice Questions

Answer:

Question 8

The technique in which the change in the formal parameter gets reflected in the actual parameter is known as ...........

  1. call by reference ✓
  2. call by value
  3. call by argument
  4. call by method
Multiple Choice Questions

Answer:

Question 9

In which technique are the values of actual parameters copied to the formal parameters?

  1. call by reference
  2. call by value ✓
  3. call by argument
  4. call by method
Multiple Choice Questions

Answer:

Question 10

A method with many definitions is known as ...........

  1. many method
  2. multiple method
  3. void method
  4. overloaded method ✓
Multiple Choice Questions

Answer:

State whether the given statements are True or False

14 questions

Question 1

A method may contain any number of return statements.
True

State whether the given statements are True or False

Answer:

Question 2

The non-static methods need an instance to be called.
True

State whether the given statements are True or False

Answer:

Question 3

A method can return more than one value.
False

State whether the given statements are True or False

Answer:

Question 4

Methods defined as void must return a value.
False

State whether the given statements are True or False

Answer:

Question 5

The static methods need an instance to be called.
False

State whether the given statements are True or False

Answer:

Question 6

In Java, all primitive types are passed by value and all reference types are passed by reference.
True

State whether the given statements are True or False

Answer:

Question 7

You can place the return statement in a void method without any expression.
True

State whether the given statements are True or False

Answer:

Question 8

If a method returns a value, then it must be of the same data type as defined in the method prototype.
True

State whether the given statements are True or False

Answer:

Question 9

Parameters in the method definition are called dummy parameters.
True

State whether the given statements are True or False

Answer:

Question 10

Methods reside in a class in Java.
True

State whether the given statements are True or False

Answer:

Question 11

Method overloading is one of the ways by which Java implements polymorphism.
True

State whether the given statements are True or False

Answer:

Question 12

The scope of a local variable is limited to the method or the block it is declared in.
True

State whether the given statements are True or False

Answer:

Question 13

The keyword static makes a method a class method.
True

State whether the given statements are True or False

Answer:

Question 14

An impure method always returns the same value when the same arguments are given.
False

State whether the given statements are True or False

Answer: