basic java part 1

54
7/28/2019 Basic Java Part 1 http://slidepdf.com/reader/full/basic-java-part-1 1/54  Basic Java Part 1

Upload: sreenivas-reddy-g

Post on 03-Apr-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 1/54

 Basic Java Part 1

Page 2: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 2/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

2

Agenda

• Java Technology Overview

• Object-Oriented Programming Concepts

• Language Basics

• Classes and Objects

Interfaces and Inheritance• Numbers and Strings

• Packages

Page 3: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 3/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

3

The Java Programming Language

The Java programming language is a high-level language that can be characterized byall of the following buzzwords:

• Simple

• Architecture neutral

• Object oriented

Portable• Distributed

• High performance

• Multithreaded

• Robust

• Dynamic

• Secure

Page 4: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 4/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

4

The Java Programming Language

overview of the software development process.

same application is capable of running on multiple platforms.

Page 5: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 5/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

5

The Java Programming Language

The Java Platform

A platform is the hardware or software environment in which a program runs

The Java platform has two components:The Java Virtual Machine The Java Application Programming Interface(API)

The API and Java Virtual Machine insulate the program from the underlying hardware.

Page 6: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 6/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

6

Object-Oriented Programming Concepts

Objects

Real-world objects share two characteristics: They all have state and behavior. Foreg:Dogs have state (name, color, breed, hungry) and behavior (barking, fetching, wagging tail)

Software objects are conceptually similar to real-world objects: they too consist of state andrelated behavior. An object stores its state in fields (variables in some programminglanguages) and exposes its behavior through methods (functions in some programminglanguages).

A software Object A Bicycle modelled as software object

Page 7: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 7/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

7

Object-Oriented Programming Concepts

Bundling code into individual software objects provides a number of benefits, including:

• Modularity: The source code for an object can be written and maintainedindependently of the source code for other objects. Once created, an object canbe easily passed around inside the system.

• Information-hiding: By interacting only with an object's methods, the details of itsinternal implementation remain hidden from the outside world.

• Code re-use: If an object already exists (perhaps written by another softwaredeveloper), you can use that object in your program. This allows specialists toimplement/test/debug complex, task-specific objects, which you can then trust torun in your own code.

• Pluggability and debugging ease: If a particular object turns out to beproblematic, you can simply remove it from your application and plug in a differentobject as its replacement. This is analogous to fixing mechanical problems in the

real world. If a bolt breaks, you replace it, not the entire machine.

Objects continued… 

Page 8: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 8/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

8

Object-Oriented Programming Concepts

A class is the blueprint from which individual objects are created.

The following Bicycle class is one possible implementation of a bicycle:

What is a Class?

Page 9: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 9/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

9

Object-Oriented Programming Concepts

Exercise:

Create a class with a main method, create two instances of Bicycle class,invoke methods on these objects and print their states.

What is a Class?

Page 10: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 10/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

10

Object-Oriented Programming Concepts

What is a Inheritance?

• Different kinds of objects often have a

certain amount in common with each other• All bikes share common characteristics like

- current speed, current pedal cadence,current gear

• Each of them also defines additionalfeatures:

 – tandem bicycles have two seats and two sets ofhandlebars

 – road bikes have drop handlebars

 – Mountain bikes have additional chainring

Object-oriented programming allows classes to inherit commonly used state and behavior from other 

classes. Bicycle now becomes the superclass of MountainBike, RoadBike, and TandemBikeSyntax for creating subclass

Page 11: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 11/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

11

Object-Oriented Programming Concepts

• In its most common form, an interface is a group of related methods with empty bodies

What is an Interface?

Syntax for implementing an Interface

Page 12: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 12/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

12

Object-Oriented Programming Concepts

• A package is a namespace that organizes a set of related classes and interfaces.

Conceptually you can think of packages as being similar to different folders on your computer.• Exercise (setting class path etc)

What is an Package?

Page 13: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 13/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

13

Language Basics

The Java programming language defines the following kinds of variables:

Instance Variables (Non-Static Fields) :

objects store their individual state in "non-static fields," that is, fields declaredwithout the static keyword. Non-static fields are also known as instance variablesbecause their values are unique to each instance of a class

Class Variables (Static Fields)

A class variable is any field declared with the static modifier; this tells the compiler

that there is exactly one copy of this variable in existence, regardless of how manytimes the class has been instantiated

Local Variables:Similar to how an object stores its state in fields, a method will often store its temporary statein local variables

Parameters:Parameters are variables passed as arguments in method signature within the braces.

parameters are always classified as "variables," not "fields

Variables

Page 14: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 14/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

14

Language Basics

The Java programming language is strongly typed, which means that all variables mustfirst be declared before they can be used.

The eight primitive data types supported by the Java programming languageare: 

byte The byte data type is an 8-bit signed two's complement integer. It has aminimum value of 128 and a maximum value of 127 (inclusive).

short The short data type is a 16-bit signed two's complement integer. It has aminimum value of 32,768 and a maximum value of 32,767 (inclusive).

int The int data type is a 32-bit signed two's complement integer. It has a minimumvalue of 2,147,483,648 and a maximum value of 2,147,483,647 (inclusive).

long The long data type is a 64-bit signed two's complement integer. It has aminimum value of 9,223,372,036,854,775,808 and a maximum value of9,223,372,036,854,775,807 (inclusive).

float The float data type is a single-precision 32-bit IEEE 754 floating pointdouble The double data type is a double-precision 64-bit IEEE 754 floating point

boolean The boolean data type has only two possible values: true and false.

char The char data type is a single 16-bit Unicode character. It has a minimumvalue of '\u0000' (or 0) and a maximum value of '\uffff' (or 65,535 inclusive).

Primitive Data Types

Page 15: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 15/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

15

Language Basics

• Default Values

Primitive Data Types

Local variables are slightly different; the compiler never assigns a default

value to an uninitialized local variable

A literal is the source code

representation of a fixed value

Page 16: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 16/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

16

Language Basics

An array is a container object that holds a fixed number of values of a

single type. The length of an array is established when the array iscreated.

Arrays 

Page 17: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 17/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

17

Language Basics

• Create a small program to copy values from one array to another.

• Use System.arraycopy(Object src, int srcPos, Object dest, int destPos, int length) to modifythe above program.

Arrays Excercise

Page 18: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 18/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

18

Language Basics

Operators are special symbols that perform specific operations on one, two, or three operands,and then return a result.

Operators 

Operator Precedence

Page 19: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 19/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

19

Language Basics

Operators

The Type Comparison Operator instanceof 

The instanceof operator compares an object to a specified type.You can use it to test if an object is an instance of a class, an instance of a subclass,or an instance of a class that implements a particular interface

Page 20: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 20/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

20

Language Basics

The if-then and if-then-else Statements

Control Flow Statements

The switch Statement

the switch statement allows for any number of possible execution paths.

A switch works with the byte, short, char, and int primitive data types

Page 21: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 21/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

21

Language Basics

The while and do-while Statements

The for Statement

Branching Statements

The break Statement

The break statement has two forms: labeled and unlabeled

Page 22: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 22/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

22

Language Basics

Break Statement unlabeled The continue Statement

The continue statement skips the currentiteration of a for, while, or do-while loop.The unlabeled form skips to the end of theinnermost loop's body and evaluates the booleanexpression that controls the loop

Page 23: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 23/54

Page 24: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 24/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

24

Language Basics

• The last of the branching statements is the return statement. The return statement

exits from the current method, and control flow returns to where the method wasinvoked.

The return Statement

Page 25: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 25/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

25

Classes and Objects

Declaring Classes

In general, class declarations can include these components, in order: 

•Modifiers such as public, private. 

•The class name, with the initial letter capitalized by convention. 

•The name of the class's parent (superclass), if any, preceded by the keyword extends.A class can only extend (subclass) one parent. 

•A comma-separated list of interfaces implemented by the class, if any, preceded by the keyword

implements. A class can implement more than one interface. •The class body, surrounded by braces, { }. 

Page 26: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 26/54Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

26

Classes and Objects

There are several kinds of variables:

• Member variables in a class: these are called fields.

• Variables in a method or block of code: these are called local variables.

• Variables in method declarations: these are called parameters.

Naming a Method• By convention, method names should be a verb in lowercase or a multi-word name that begins

with a verb in lowercase, followed by adjectives, nouns, etc. In multiword names, the first letterof each of the second and following words should be capitalized. Here are some examples:

 – Run, runFast, getBackground, getFinalData, compareTo, setX, isEmpty 

Overloading MethodsThe Java programming language supports overloading methods, and Java can distinguishbetween methods with different method signatures.

Page 27: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 27/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

27

Classes and Objects

Note

Overloaded methods should be used sparingly, as they can make code much less readable.

Page 28: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 28/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

28

Classes and Objects

• A class contains constructors that are invoked to create objects from the class blueprint.

• Constructor declarations look like method declarations except that they use the name of theclass and have no return type.

Providing Constructors for Your Classes

Parameter Types

You can use any data type for a parameter of a method or a constructor . This includes primitivedata types, such as doubles, floats, and integers

NoteThe Java programming language doesn't let you pass methods into methods.

C O j

Page 29: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 29/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

29

Classes and Objects

• You can use a construct called varargs to pass an arbitrary number of values to a

method. To use varargs, you follow the type of the last parameter by an ellipsis(three dots, ...), then a space, and the parameter name.

Arbitrary Number of Arguments

Parameter Names

• The name of a parameter must be unique in its scope. It cannot be the same as thename of another parameter for the same method or constructor, and it cannot be the

name of a local variable within the method or constructor.

Cl d Obj t

Page 30: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 30/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

30

Classes and Objects

• Passing Primitive Data Type Arguments

is invoked using

• Passing Reference Data Type Arguments

is invoked using

Cl d Obj t

Page 31: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 31/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

31

Classes and Objects

• Creating Objects

Each of the following statements creates an object and assigns it to a variable:

Objects

• Each of these statements has three parts:

1. Declaration. The code set in bold are all variable declarations that associate a

variable name with an object type.2. Instantiation. The new keyword is a Java operator that creates the object.

3. Initialization. The new operator is followed by invoking a constructor, which

initializes the new object

Next slide contains the code for the Rectangle class, which contains four constructors:

Each constructor lets you provide initial values for the rectangle's size and width,using both primitive and reference types. If a class has multiple constructors,

they must have different signatures. 

Cl d Obj t

Page 32: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 32/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

32

Classes and Objects

Cl d Obj t

Page 33: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 33/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

33

Classes and Objects

• Returning a Class or Interface

•Using the this Keyword

•Using this with a Field  •Using this with a Constructor

Classes and Objects

Page 34: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 34/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

34

Classes and Objects

• Access level modifiers determine whether other classes can use a particular field orinvoke a particular method. There are two levels of access control:

 – At the top levelpublic, or package-private (no explicit modifier).

 – At the member levelpublic, private, protected, or package-private (no explicit modifier).

Access Levels

Visibility Illustration

Classes and Objects

Page 35: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 35/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

35

Classes and Objects

• Understanding Instance and Class Members

 – When a number of objects are created from the same class blueprint, theyeach have their own distinct copies of instance variables.

 – Sometimes, you want to have variables that are common to all objects. This isaccomplished with the static modifier. Fields that have the static modifier intheir declaration are called static fields or class variables.

Class variables are referenced by the class name itself, as in:

Bicycle.numberOfBicycles 

Class Methods

Static methods, which have the static modifier in their declarations, should be invoked

with the class name as in: ClassName.methodName(args)Constants :

The static modifier, in combination with the final modifier, is also used to define constants

Eg: static final double PI = 3.141592653589793;

Classes and Objects

Page 36: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 36/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

36

Classes and Objects

• Static Initialization Blocks

A static initialization block is a normal block of code enclosed in braces, { }, andpreceded by the static keyword. Here is an example:

static {// whatever code is needed for initialization goes here

}

Nested Classes – Nested classes are divided into two categories: static and non-static.

 – Nested classes that are declared static are simply called static nested classes.

 – Non-static nested classes are called inner classes.

Classes and Objects

Page 37: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 37/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

37

Classes and Objects

• Local and Anonymous Inner Classes

 – You can declare an inner class within the body of a method. Such a class is known as alocal inner class.

 – You can also declare an inner class within the body of a method without naming it. Theseclasses are known as anonymous inner classes

• Enum Types

An enum type is a type whose fields consist of a fixed set of constants

public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }

Interfaces and Inheritance

Page 38: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 38/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

38

Interfaces and Inheritance

• Interfaces in Java

 – In the Java programming language, an interface is a reference type, similar toa class, that can contain only constants, method signatures, and nested types. 

 – There are no method bodies. Interfaces cannot be instantiated they can onlybe implemented by classes or extended by other interfaces.

Interfaces and Inheritance

Page 39: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 39/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

39

Interfaces and Inheritance

• An interface defines a protocol of communication between two objects.

• An interface declaration contains signatures, but no implementations, fora set of methods, and might also contain constant definitions.

• A class that implements an interface must implement all the methodsdeclared in the interface.

• An interface name can be used anywhere a type can be used.

Interfaces and Inheritance

Page 40: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 40/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

40

Interfaces and Inheritance

• Inheritance 

In the Java language, classes can be derived from other classes, therebyinheriting fields and methods from those classes.

• A class that is derived from another class is called a subclass (also aderived class, extended class, or child class). The class from which thesubclass is derived is called a superclass (also a base class or a parentclass).

• Excepting Object, which has no superclass, every class has one and onlyone direct superclass (single inheritance). In the absence of any otherexplicit superclass, every class is implicitly a subclass of Object.

• Classes can be derived from classes that are derived from classes thatare derived from classes, and so on, and ultimately derived from thetopmost class, Object. Such a class is said to be descended from all theclasses in the inheritance chain stretching back to Object.

Interfaces and Inheritance

Page 41: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 41/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

41

Interfaces and Inheritance

• What You Can Do in a Subclass 

A subclass inherits all of the public and protected members of its parent

• You can use the inherited members as is, replace them, hide them, orsupplement them with new members:

 – The inherited fields can be used directly, just like any other fields.

 – You can declare a field in the subclass with the same name as the one in the

superclass, thus hiding it (not recommended).

 – You can declare new fields in the subclass that are not in the superclass.

 – The inherited methods can be used directly as they are.

 – You can write a new instance method in the subclass that has the samesignature as the one in the superclass, thus overriding it.

 – You can write a new static method in the subclass that has the samesignature as the one in the superclass, thus hiding it.

 – You can declare new methods in the subclass that are not in the superclass.

 – You can write a subclass constructor that invokes the constructor of thesuperclass, either implicitly or by using the keyword super.

Interfaces and Inheritance

Page 42: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 42/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

42

Interfaces and Inheritance

• Private Members in a Super class A subclass does not inherit the private members of its parent class. However, if

the super class has public or protected methods for accessing its private fields,these can also be used by the subclass.

A nested class has access to all the private members of its enclosing class bothfields and methods. Therefore, a public or protected nested class inherited by asubclass has indirect access to all of the private members of the super class

• Casting ObjectsCasting shows the use of an object of one type in place of another type, among the objects

permitted by inheritance and implementations.Object obj = new MountainBike();means obj is both an Object and a Mountainbike, This is called implicit casting

If, on the other hand, we write:MountainBike myBike = obj; we would get a compile-time error because obj is not known tothe compiler to be a MountainBike. 

• We can promise to assign a MountainBike to obj by explicit casting:

MountainBike myBike = (MountainBike)obj;

Note : Following logical test would save you from a runtime Error

Interfaces and Inheritance

Page 43: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 43/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

43

Interfaces and Inheritance

• Overriding and Hiding Methods

 – Instance methods:

 – An instance method in a subclass with the same signature (name, plus the number andthe type of its parameters) and return type as an instance method in the superclassoverrides the superclass's method.

 – @ Override annotation can be used to instruct the compiler that you intend to override amethod in the superclass. If for some reason the method intended to be overriddendoesn't exist in super class then the compiler will generate an error.

 – Class methods

 – If a subclass defines a class method with the same signature as a class method in thesuperclass, the method in the subclass hides the one in the superclass

 – Modifiers

 – The access specifier for an overriding method can allow more, but not less, accessthan the overridden method. For example, a protected instance method in thesuperclass can be made public, but not private, in the subclass

 – Summary

Interfaces and Inheritance

Page 44: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 44/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

44

Interfaces and Inheritance

• Hiding Fields Within a class, a field that has the same name as a field in the superclass hides the superclass's field,even if their types are different. The field in super class can be accessed using the super keyword. 

Subclass ConstructorsThe syntax for calling a superclass constructor is: super(); or super(parameter list);

Abstract Classes versus Interfaces •Unlike interfaces, abstract classes can contain fields that are not static and final, and they cancontain implemented methods

•Abstract classes are similar to interfaces, except that they provide a partial implementation,

leaving it to subclasses to complete the implementation•If an abstract class contains only abstract method declarations, it should be declared as an

interface instead.

 Excercise

Numbers and Strings

Page 45: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 45/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

45

Numbers and Strings

• You use one of the wrapper classes Byte, Double, Float, Integer, Long, or Short to wrap anumber of primitive type in an object. The Java compiler automatically wraps (boxes)primitives for you when necessary and unboxes them, again when necessary.

Excercise

There are three reasons that you might use a Number object rather than a primitive:

1. as an argument of a method that expects an object (often used when manipulating collections ofnumbers); 

2. to use constants defined by the class, such as MIN_VALUE and MAX_VALUE, that provide the upperand lower bounds of the data type; 

3. to use class methods for converting values to and from other primitive types, for converting to and fromstrings, and for converting between number systems (decimal, octal, hexadecimal, binary). 

When working with numbers, most of the time you use the primitive types in your code .There are,

however, reasons to use objects in place of primitives, and the Java platform provides wrapper 

classes for each of the primitive data types. These classes "wrap" the primitive in an object

Numbers and Strings

Page 46: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 46/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

46

Numbers and Strings

• Methods Implemented by All Subclasses of Number

Numbers and Strings

Page 47: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 47/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

47

Numbers and Strings

• Conversion Methods, Integer Class

Numbers and Strings

Page 48: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 48/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

48

u be s a d S gs

• The DecimalFormat ClassExample:

Numbers and Strings

Page 49: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 49/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

49

g

• Explanation

Numbers and Strings

Page 50: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 50/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

50

g

• Useful Methods in the Character Class

Numbers and Strings

Page 51: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 51/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

51

g

• Escape Sequences

Numbers and Strings

Page 52: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 52/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

52

g

• StringsStrings, which are widely used in Java programming, are a sequence of characters. In

the Java programming language, strings are objects. • Creating String:

String greeting = "Hello world!";

• The String class has eleven constructors that allow you to provide the initial value of the stringusing different sources, such as an array of characters:

char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.'};String helloString = new String(helloArray);System.out.println(helloString);

• NoteThe String class is immutable, so that once it is created a String object cannot bechanged. The String class has a number of methods, some of which will bediscussed next, that appear to modify strings. Since strings are immutable, whatthese methods really do is create and return a new string that contains the resultof the operation.

Numbers and Strings

Page 53: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 53/54

Any use, copying or distribution without written permission from UnitedHealth Group is prohibited

53

• String lengthAccessor method that you can use with strings is the length() method, which returns the

number of characters contained in the string object.Exercise: write a program to check a palindrome

•  Concatenating Strings1. string1.concat(string2);2. "My name is ".concat("Rumplestiltskin");3. "Hello," + " world" + "!"

Page 54: Basic Java Part 1

7/28/2019 Basic Java Part 1

http://slidepdf.com/reader/full/basic-java-part-1 54/54

Thank you