Title: Importing methods in the Java library
1Importing methods in the Java library
2Previously discussed
- Method a collection of statements that performs
a complex (useful) task - A method is identified by a method name
- Class a container for methods
- Methods that serves a similar purpose are stored
in the same class - A class is identified by a class name
3Previously discussed (cont.)
4Organization of the Java library
- The Standard Java library consists of a number of
packages - Each package consists of a number of classes
(that provide similar functionality)
5Organization of the Java library (cont.)
- The standard Java library is named java
- A package named xxx inside the standard Java
library is named java.xxx
6Organization of the Java library (cont.)
- Some commonly used packages
- java.lang Provides classes that are fundamental
to the design of the Java programming language.
Official website http//download.oracle.com/java
se/1.4.2/docs/api/java/lang/package-summary.html - java.lang Contains the collections framework,
legacy collection classes, event model, date and
time facilities, internationalization, and
miscellaneous utility classes (a string
tokenizer, a random-number generator, and a bit
array). Official website http//download.oracle.
com/javase/1.4.2/docs/api/java/util/package-summar
y.html
7Organization of the Java library (cont.)
- Schematical representation of Java's Standard
library
8Organization of the Java library (cont.)
- A class named yyy inside the package java.xxx is
named java.xxx.yyy - Example
- The class Math inside the package java.lang is
known as java.lang.Math - The class Double inside the package java.lang is
known as java.lang.Double - The class Stack inside the package java.util is
known as java.util.Stack - The class Scanner inside the package java.util
is known as java.util.Scanner
9Organization of the Java library (cont.)
- It is a Java convention that the name of a Java
class begins with a upper case letter - It is also a Java convention that the name of a
method begins with a lower case letter
10Importing a method that is available in Java's
standard library importing a class
- Rule of usage
- The import clauses must occur before any class
definitions
- If a Java program wants to use a method in the
Java library, the Java program must first import
the containing class
11Importing a method that is available in Java's
standard library importing a class (cont.)
- Syntax to import a class from the Java library
import className
12Importing a method that is available in Java's
standard library importing a class (cont.)
import java.lang.Math import
java.lang.Double import java.util.Stack
import java.util.Scanner // After the import
clauses, you can write // the class
definition // This program can now use all
methods defined inside // the classes Math,
Double, Stack and Scanner public class
MyProgram public static void
main(String args) double a
a Math.sqrt(2.0) // Save computed
value in variable System.out.println(a) //
You can print the saved value later
13Importing all classes in a package
- Some complex Java program may use many different
methods contained in many different classes in
the same package - It would be a pain to write a long list of
import clauses - Example
import java.lang.Math import java.lang.Double
import java.lang.Integer ...
14Importing all classes in a package (cont.)
- There is a short hand to import all classes
contained in a package
import java.lang. // import all class in
java.lang package import java.util. // import
all class in java.util package
15Frequently used methods java.lang
- According to the Rule of usage
- We must import java.lang.Math if we want to use
the method Math.sqrt() -
- If a Java program wants to use a method in the
Java library, the Java program must first import
the containing class
16Frequently used methods java.lang (cont.)
import java.lang.Math // We MUST import this
class to use Math.sqrt public class Abc
double a, b, c, x1, x2 // Define 5
variable a 1.0 b 0.0 c
-4.0 x1 ( -b - Math.sqrt( bb - 4ac
) ) / (2a) x2 ( -b Math.sqrt( bb -
4ac ) ) / (2a)
System.out.print("a ") System.out.println(a
) System.out.print("b ")
System.out.println(b) System.out.print("c
") System.out.println(c)
System.out.print("x1 ") System.out.println(
x1) System.out.print("x2 ")
System.out.println(x2)
17Frequently used methods java.lang (cont.)
- But.... because
- all classes in the java.lang package are
automatically included in every Java program (the
Java compiler is programmed to do this) - That is why we did not need to import
java.lang.Math in our program.
- The package java.lang contains classes that are
fundamental to the design of the Java programming
language.
18Summary importing methods in the Java library
- If a Java program wants to use a method in the
Java library, the Java program must first import
the containing class - All classes in the java.lang package have
already been imported into a Java program - (You can use methods in these classes without the
import clause)
19Summary importing methods in the Java library
(cont.)
- Analogy
- The reason you need to import the method is
because the Java compiler needs to know the
details of the method before it can make the
correct translation.
- You can think of methods inside your Java
program and methods inside the Java library as
subjects (people) from different automonous
entities (e.g., countries) - When you want to "bring" a method from the Java
library into your program, you need to issue an
import "license"