Download presentation
Presentation is loading. Please wait.
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.