String str1; //declare an object variable. str1 = new String ('mary had a little lamb'); Strings are created SO OFTEN that ... str1 = 'mary had a little lamb' ... – PowerPoint PPT presentation
The String class can be used to create String objects.
String str1 //declare an object variable
str1 new String (mary had a little lamb)
Strings are created SO OFTEN that Java provides a short cut for creating them (without using constructor) ?
str1 mary had a little lamb
Object declaration and construction (creation) can be done in one statement
String str1 new String(mary had a little lamb)
2 Using a String Object
String objects have many behaviors. One of these behaviors is called length .
The length behavior of a String object provides the number of characters in the String.
So
str1.length() provides the number of characters
in the String object str1
And
System.out.println(the length is str1.length() )
Prints the length is 22
3 Design a Greeter Class Greeter
message sayGreeting( ) Greeter (themessage) String The message attribute of the Greeter class will have a String for a value .. 4 Using a Greeter Class
If we had a Greeter class, we could create use Greeter objects like this
public class Application
public static void main (String args )
Greeter gre1
Greeter gre2 // declare two Greeter object variables
gre1 new Greeter(Hello, how are you!)
gre2 new Greeter(HOWDY!!)
System.out.println( gre1.sayGreeting() )
System.out.println( gre2.sayGreeting() )
5 Code the Greeter Class
public class Greeter //name of the class we
are defining
private String message //each object of type
Greeter will need a variable
to store its message
public String sayGreeting( )
// this behavior is available to all classes (public)
// this behavior gives back a String
// this behavior requires no information to be provided
return message //statement that executes when this behavior
// is executed
We still need to add the constructor method.
6 the constructor method ..
public Greeter(String themessage)
//accessible to other classes
//requires a String,well call it themessage
message themessage
//store the String which was provided
// in the variable message
7 The entire Greeter class ..
public class Greeter
private String message
public Greeter(String themessage)
message themessage
public String sayGreeting() return message
8 Updated UML Greeter
- message String Greeter (String) String sayGreeting( ) the constructor needs to be provided with a String so that the message can be given an initial value the sayGreeting method returns a String 9 Instance Fields (Variables)
public class Greeter
...private String message // called instance field
// or instance variable
access specifier (such as private)
type of variable (such as String)
name of variable (such as message)
10 Method Definition
access specifier (such as public or private)
public
return type (such as String or void)
public String
method name (such as sayHello)
public String sayHello
list of parameters (empty for sayHello)
public String sayHello ( )
method body in
11 Parameters
public Greeter(String themessage)
message themessage
themessage is the name we are giving to the String value which will be provided
we will store the value which is provided in our variable message when an Greeter object is created
themessage is called a parameter
12 Syntax Method Implementation
public class ClassName
...
accessSpecifier returnType methodName(parameter Type
parameterName,...) method body
...
13 Syntax The return Statement
return expression
or
return
Example
return message
Purpose
To specify the value that a method returns, and
exit the method immediately. The return value
becomes the value of the method call
expression.
14 The Constructor
The constructor is a method used to create and object
The constructor has the same name as the class (and no return type)
The constructor is a method which provides initial values to the instance variables.
public Greeter(String themessage)
message themessage
15
The Greeter class cannot execute (it is not an application class, there is no main method)
The Greeter class is will be used for creating objects, and then using them.
we already saw a class which USES the Greeter class.
16 this class can be used to test if Greeter works correctly!!
public class Application
public static void main (String args )
Greeter gre1
Greeter gre2 // declare two Greeter object variables
gre1 new Greeter(Hello, how are you!)
gre2 new Greeter(HOWDY!!)
System.out.println( gre1.sayGreeting() )
System.out.println( gre2.sayGreeting() )
17 Another Class for the Greeter Class
public class GreeterTest
public static void main(String args)) Greeter worldGreeter new Greeter(World)
Greeter daveGreeter new Greeter(Dave)
System.out.println(worldGreeter.sayHello() )
System.out.println(daveGreeter.sayHello())
18 Each object of type Greeter is an instance of class Greeter. Each instance gets its own variable message, so message is called an instance field or variable. 19 Accessing Instance Fields
The instance field message is PRIVATE.
That means it can only be used by statements inside the Greeter class definition.
The sayGreeting method of the Greeter class can access the private instance field
public String sayGreeting() return message
20
The application class cannot access message
public class GreeterTest public static void main(String args)
System.out.println(daveGreeter.message)
// ERROR!!!
Encapsulation Hiding data and providing access through methods
PowerShow.com is a leading presentation sharing website. It has millions of presentations already uploaded and available with 1,000s more being uploaded by its users every day. Whatever your area of interest, here you’ll be able to find and view presentations you’ll love and possibly download. And, best of all, it is completely free and easy to use.
You might even have a presentation you’d like to share with others. If so, just upload it to PowerShow.com. We’ll convert it to an HTML5 slideshow that includes all the media types you’ve already added: audio, video, music, pictures, animations and transition effects. Then you can share it with your target audience as well as PowerShow.com’s millions of monthly visitors. And, again, it’s all free.
About the Developers
PowerShow.com is brought to you by CrystalGraphics, the award-winning developer and market-leading publisher of rich-media enhancement products for presentations. Our product offerings include millions of PowerPoint templates, diagrams, animated 3D characters and more.