0% found this document useful (0 votes)
64 views4 pages

Chapter 5 Methods

This document discusses Java methods. Key points include: 1. Methods allow for code reuse, reduce complexity, and make code easier to maintain. The document provides examples of different method declarations and usages. 2. Overloading methods allows multiple methods to have the same name but different parameters. Methods cannot be overloaded based on return type or modifiers alone. 3. The classpath specifies where to look for class files. Class files do not need to be in the same directory as the .java files and can be in different directories as long as the classpath is set correctly.

Uploaded by

Bhanjan Gauda
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views4 pages

Chapter 5 Methods

This document discusses Java methods. Key points include: 1. Methods allow for code reuse, reduce complexity, and make code easier to maintain. The document provides examples of different method declarations and usages. 2. Overloading methods allows multiple methods to have the same name but different parameters. Methods cannot be overloaded based on return type or modifiers alone. 3. The classpath specifies where to look for class files. Class files do not need to be in the same directory as the .java files and can be in different directories as long as the classpath is set correctly.

Uploaded by

Bhanjan Gauda
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Chapter 5 Methods

1. At least three benefits: (1) Reuse code; (2) Reduce complexity; (3) Easy to maintain. See the Sections 4.2 and 4.3 on how to declare and invoke methods. 2. 3. 4. void Yes. return (num1 > num2) ? num1 : num2; True: a call to a method with a void return type is always a statement itself. False: a call to a method with a nonvoid return type is always a component of an expression. A syntax error occurs if a return statement does not appear in a non-void method. You can have a return statement in a void method, which simply exits the method. But a return statement cannot return a value such as return x + y in a void method. See Section 5.2. Computing a sales commission given the sales amount and the commission rate public static double getCommission(double salesAmount, double commissionRate) Printing a calendar for a month public static void printCalendar(int month, int year) Computing a square root public static double sqrt(double value) Testing whether a number is even and return true if it is public static boolean isEven(int value) Printing a message for a specified number of times public static void printMessage(String message, int times) Computing the monthly payment, given the loan amount, number of years, and annual interest rate. public static double monthlyPayment(double loan, int numberOfYears, double annualInterestRate) Finding the corresponding uppercase letter given a lowercase letter. public static char getUpperCase(char letter) 8. Line 2: method1 is not defined correctly. It does not have a return type or void. Line 2: type int should be declared for parameter m.

5.

6. 7.

Line 8: parameter type for n should be double to match xMethod(3.4). Line 11: if (n<0) should be removed in xMethod, otherwise the a compilation error is reported. 9. public class Test { public static double xMethod(double i, double j) { while (i<j) { j--; } return j; } } 10. You pass actual parameters by passing the right type of value in the right order. The actual parameter can have the same name as its formal parameter. "Pass by value" is to pass a copy of the value to the method. (A) The output of the program is 0, because the variable max is not changed by invoking the method max. (B) Before the call, variable times is 3 n=3 Welcome to Java! n=2 Welcome to Java! n=1 Welcome to Java! After the call, variable times is 3 (C) 2 24 248 2 4 8 16 2 4 8 16 32 2 4 8 16 32 64 (D) 1 21 21 421

11.

i is 5 12.

Space required for the max method max: 0 value2: 2 value1: 1 Space required for the main method max: 0 Space required for the main method max: 0

Space required for the max method max: 2 value2: 2 value1: 1 Space required for the main method max: 0 Space required for the main method max: 0

Just before max is invoked.

Just entering max.

Just before max is returned

Right after max is returned

13.

Two methods with the same name, defined in the same class, is called method overloading. It is fine to have same method name, but different parameter types. You cannot overload methods based on return type, or modifiers.

14. Methods public static void method(int x) and public static int method(int y) have the same signature method(int). 15. 16. 17. Line 8: int n = 1 is wrong since n is already declared in the method signature. True (a) 34 + (int)(Math.random() * (55 34)) (b) (int)(Math.random() * 1000) (c) 5.5 + (Math.random() * (55.5 5.5)) (d) (char)(a + (Math.random() * (z a + 1))

18. Math.sqrt(4) = 2.0 Math.sin(2*Math.PI) = 0 Math.cos(2*Math.PI) = 1 Math.pow(2, 2) = 4.0 Math.log(Math.E) = 1 Math.exp(1) = 2.718

Math.max(2, Math.min(3, 4)) = 3 Math.rint(-2.5) = -2.0 Math.ceil(-2.5) = -2.0 Math.floor(-2.5) = -3.0 Math.round(-2.5f) = -2 Math.round(-2.5) = -2 Math.rint(2.5) = 2.0 Math.ceil(2.5) = 3.0 Math.floor(2.5) = 2.0 Math.round(2.5f) = 3 Math.round(-2.5) = -2 Math.round(Math.abs(-2.5)) = 3 19. Three benefits: (1) to avoid naming conflicts. (2) to distribute software conveniently. (3) To protect classes. 20. The source code .java file should be stored in anyDir\java\chapter4, and the class file may be stored in anyOtherDir\java\chapter4. The .java file and .class may be in the same directory or a different directory. So anyDir and anyOtherDir may be same or different. To make the class available, add anyOtherDir in the classspath using the command set classpath=%classpath%;anyOtherDir 21. The Math class is in the java.lang package. Any class in the java.lang package is automatically imported. So there is no need to import it explicitly.

You might also like