Presentation is loading. Please wait.

Presentation is loading. Please wait.

Java Packages and Libraries M Taimoor Khan

Similar presentations


Presentation on theme: "Java Packages and Libraries M Taimoor Khan"— Presentation transcript:

1 Java Packages and Libraries M Taimoor Khan taimoorkhan@ciit-attock.edu.pk

2 Content What is a class library? What is a package? Java class libraries, what do they provide? The root class : java.lang.object 2

3 The Java class library Thousands of classes Tens of thousands of methods Many useful classes that make life much easier A Java programmer must be able to work with the libraries o http://java.sun.com/javase/reference/api.jsp http://java.sun.com/javase/reference/api.jsp 3

4 Working with the library You should: know some important classes by name know how to find out about other classes o http://java.sun.com/javase/6/docs/api/ http://java.sun.com/javase/6/docs/api/ Remember: We only need to know the interface, not the implementation 4 The public face of the class

5 The exit condition String input = reader.getInput(); if(input.startsWith("bye")) { finished = true; } Where does ‘startsWith’ come from? What is it? What does it do? How can we find out? 5

6 Reading class documentation Documentation of the Java libraries in HTML format; Readable in a web browser Class API: Application Programmers’ Interface Interface description for all library classes 6

7 Interface vs implementation The documentation includes the name of the class; 7

8 Interface vs implementation The documentation includes a general description of the class; 8

9 Interface vs implementation The documentation includes a list of constructors 9

10 Interface vs implementation The documentation includes a list of methods 10

11 Interface vs implementation The documentation includes return values and parameters for constructors and methods 11

12 Interface vs implementation The documentation does not include private fields (most fields are private) private methods the implementation (source code) for each method 12

13 Using library classes Classes from the library must be imported using an import statement (except classes from java.lang). They can then be used like classes from the current project. http://java.sun.com/docs/books/tutorial/java/package/usepk gs.html http://java.sun.com/docs/books/tutorial/java/package/usepk gs.html 13 “The Java compiler automatically imports” java.lang package the package of the current file source code

14 Packages and import Classes are organised in packages. Single classes may be imported: import java.util.ArrayList; Whole packages can be imported: import java.util.*; 14 Some of the Packages listed in the API Packages are NOT hierarchical Using “ import java.awt.*;” does not import java.awt.color.*;

15 Using Random The library class Random can be used to generate random numbers 15 import java.util.Random;... Random randomGenerator = new Random();... int index1 = randomGenerator.nextInt(); int index2 = randomGenerator.nextInt(100);

16 Generating random responses 16 public Responder() { randomGenerator = new Random(); responses = new ArrayList (); fillResponses(); } public String generateResponse() { int index = randomGenerator.nextInt(responses.size()); return responses.get(index); } public void fillResponses() {... }

17 Java Packages An overview can be found at this link http://java.sun.com/javase/6/docs/api/overview- summary.html http://java.sun.com/javase/6/docs/api/overview- summary.html 17

18 Java Packages Inside each package you will find o Interfaces o Classes o Enumerations o Exceptions 18

19 java.lang “Provides classes that are fundamental to the design of the Java programming language.” Boolean, Byte, Double, Integer, Long, String String Math System Object 19

20 java.util “Contains the collections framework…date and time facilities,… string tokenizer.. random-number generator..” ArrayList, LinkedList, Stack ArrayList LinkedList Stack Calendar, Date Calendar Date Formatter Scanner StringTokenizer Random Iterator 20

21 java.io “Provides for system input and output through data streams, serialization and the file system.” Console File FileReader BufferedInputStream StreamTokenizer 21

22 GUI libraries java.awt o java.awt.Event javax.imageio javax.swing o http://java.sun.com/docs/books/tutorial/uiswing/ http://java.sun.com/docs/books/tutorial/uiswing/ 22

23 All classes are Objects 23

24 Packages 24

25 25

26 Reading & Exercises P136 – p147 Collections o http://java.sun.com/docs/books/tutorial/collections/index.html http://java.sun.com/docs/books/tutorial/collections/index.html Swing o http://java.sun.com/docs/books/tutorial/ui/index.html http://java.sun.com/docs/books/tutorial/ui/index.html Classes and Objects o http://java.sun.com/docs/books/tutorial/java/javaOO/ind ex.html http://java.sun.com/docs/books/tutorial/java/javaOO/ind ex.html Generics o http://java.sun.com/docs/books/tutorial/java/generics/ind ex.htm http://java.sun.com/docs/books/tutorial/java/generics/ind ex.htm 26

27 References http://java.sun.com/javase/reference/api.jsp http://java.sun.com/docs/books/tutorial/java/package/man agingfiles.html http://java.sun.com/docs/books/tutorial/java/package/man agingfiles.html http://en.wikipedia.org/wiki/Classpath_(Java) http://condor.depaul.edu/~glancast/224class/docs/lecJun16. html http://condor.depaul.edu/~glancast/224class/docs/lecJun16. html 27


Download ppt "Java Packages and Libraries M Taimoor Khan"

Similar presentations


Ads by Google