data types – reference typessmithjo/classnotes_2xxxx/powerpoints/lesson...data types – reference...

Post on 21-Oct-2019

16 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Data Types – Reference Types

Objective

• To understand what reference types are

• The need to study reference types

• To understand Java standard packages

• To differentiate between Java defined types and user defined types

• To have a deeper understanding of the String class

• To get acquainted with the Math class

• To get acquainted with the Wrapper classes

Data Types – Reference Types

• Reference types - any data type that is composed of primitive data types as its

based type.

• In other words, it is an aggregate of primitive types.

• Reference types in Java are:

The array data structure, and

The class data type.

• In this section we will briefly discuss the concept of array.

• We will discuss the class type to the extent of the fundamental classes of Java.

Reference Types - Array

• Array

• An array is a set of storage locations set aside to hold one type of data.

• It is simply a means where by we can store values of the same type by using

one generic name.

• The list of items are stored linearly

• Hence the items can be accessed by their relative position in the list.

• Arrays are real objects in Java.

• Storage space is allocated for an array during execution time.

• The concept will be discussed fully in future lesson

Reference Types - Array

10 20 30 40 50 60 70 80

arr

indeces

0 1 2 3 4 5 6 7

Data

This is the most we will say about arrays for now

Reference Types - Class

• The concept of class as you know is the fundamental construct upon which

Java is built.

• A class serves as a blueprint or a template for a certain type of object.

• All data types other than the primitive type or the array must be addressed in

terms of class.

• This is evident in the way that we have been using class.

• For instance, going back to the class Book.

• In order to use this class we had to declare variables of the type:

• That is, Book b1; for instance

Reference Types - Standard Packages

• Java has a vast and rich collection of classes.

• These classes are stored in respective directories and subdirectories.

• Each directory or subdirectory is called, a package.

• Programmers can use these classes in their specific applications.

• There are several packages in Java.

• Two of the most important packages in the language are java and javax.

Java Standard Packages

java and javax packages, along with

their sub-packages. Some of the sub-

packages also contain sub-packages

of their own

•The sub-package lang is a special

package is for general programming

•The sub-package javax is designed

for Graphical User Interface

programming (GUI)

Java Standard Package- lang

• The java.lang package contains classes that are fundamental to Java.

• All of the classes in this package are available in your program automatically.

• That is, as soon as the Java compiler is loaded, all of these classes are loaded

into every Java source file.

Java Standard Package- lang

Java Standard Package- lang

• Chief among these fundamental classes are the following:

Object

String

Math

System

• The wrapper classes - for each primitive type there is a corresponding class.

Byte

Short

Integer

Long

Character

Float

Double

Boolean

Void

The class Object

• See the Application Programmers’ Interface (API)

• Class

• String

• Math

• Wrapper classes - Byte, Short, Integer, Long, Character, Float, Double,

Boolean, and Void.

Input and Output Operations

• There are three other important operations that are performed on data.

• Input operations

• Output operations, and

• Formatting operations.

• We have been generating outputs already but it was not dealt with formally.

• Input Operations - There are several ways to input data into a program:

Java Input/Output classes

The DOS prompt

The Scanner Class

JOptionPane Class

JOptionPane Input/Output Dialog Boxes

Capabilities

1. Create input dialog boxes

2. Create output windows

JOptionPane Input Dialog Boxes

There are four kinds of standard dialogs:

1. Message dialog shows a message and waits for the user to click OK.

2. Confirmation dialog shows a question and ask for confirmation such as OK

or Cancel.

3. Option dialog shows a question and gets the user’s response from a set of

options.

4. Input dialog shows a question and gets the user’s input from a text field, a

combo box, or list.

Enhance Your Output with Scrollable Window

JOptionPane – Input Dialog

• You must import the class JOptionPane

import javax.swing.JOptionPane;

• The class contains:

Several constructors, and

Several class methods that deals with dialog boxes.

• The general construct of these methods is as follows:

showXXXXDialog( parameter_list)

• Where XXXX is any of the four dialog box types. We will only be concerned with the input dialog type.

Using JOptionPane for Input

1. import javax.swing.JOptionPane;

2. class optionPane

3. {

4. public static void main(String[] arg)

5. {

6. String str = JOptionPane.showInputDialog( "Read data” );

7. }

8. }

Using JOptionPane for Input

• Type the value 123.45

• This value is returned as a String

String str = JOptionPane.showInputDialog( "Read data” );

That is, str = “123.45”

Using the Wrapper class - Double

• Convert the string value to a double by using the parseDouble method

1. import javax.swing.JOptionPane;

2. class convert_string

3. {

4. public static void main(String[] arg)

5. {

6. String str = JOptionPane.showInputDialog("Read data");

7. double x = Double.parseDouble(str);

8. }

9. }

Build a Single Class for Input

1. import javax.swing.JOptionPane;

2. class GetData

3. {

4. static String str;

5. static double getDouble(String s)

6. {

7. str = JOptionPane.showInputDialog(s);

8. return Double.parseDouble(str);

9. }

10. static int getInt(String s)

11. {

12. str = JOptionPane.showInputDialog(s);

13. return Integer.parseInt(str);

14. }

15. static String getWord(String s)

16. {

17. return JOptionPane.showInputDialog(s);

18. }

19. }

Build a Single Class for Input (Another view)

1. import javax.swing.JOptionPane;

2. class GetData

3. {

4. static double getDouble(String s)

5. {

6. return Double.parseDouble( getWord(s) );

7. }

8. static char getChar(String s)

9. {

10. String str = getWord(s);

11. return str.charAt(0);

12. }

13. static int getInt(String s)

14. {

15. return Integer.parseInt(getWord(s));

16. }

17. static String getWord(String s)

18. {

19. return JOptionPane.showInputDialog(s);

20. }

21. }

Using the GetData Class

1. class TestGetData

2. {

3. public static void main(String[] arg)

4. {

5. int x = GetData.getInt("Type an integer value");

6. double y = GetData.getDouble("Type a double value");

7. String name = GetData.getWord("Enter a Name");

8. System.out.println("Your name is: " + name + "\nYour age is: "

9. + x + "\nYou have $" + y);

10. }

11. }

yy

• Dialog box when Line 5 is executed.

• Dialog box when Line 6 is executed.

• Dialog box when Line 7 is executed.

The output

• The output

top related