public class AboutStrings{
public static void main(String args[]){
String s1="hello";
String s2="hel";
String s3="lo";
String s4=s2+s3;
//to know the hash codes of s1,s4.
System.out.println(s1.hashCode());
System.out.println(s4.hashCode());
// these two s1 and s4 are having same hashcodes.
if(s1==s4){
System.out.println("s1 and s4 are same.");
}else
System.out.println("s1 and s4 are not same.");
}
}
Somebody told me that, == operator compares references of
the objects.
In the above example even though s1 and s4 are refering to
same object(having same hash codes),
it is printing s1 and s4 are not same.
Can anybody explain in detail why it is behaving like this?
Thanks in Advance
RavuriVinod
What is inner class?what is the use of inner class?where we
create the object for inner class? and inner class can
extend any class or inner class can implement any interface?
53
Question 5 [15]
Consider the following classes, illustrating the Strategy
design pattern:
import java.awt.*;
abstract class Text {
protected TextApplet tA;
protected Text(TextApplet tApplet) {
tA = tApplet;
}
abstract public void draw(Graphics g);
}
class PlainText extends Text {
protected PlainText(TextApplet tApplet) {
super(tApplet);
}
public void draw(Graphics g) {
g.setColor(tA.getColor());
g.setFont(new Font("Sans-serif", Font.PLAIN, 12));
g.drawString(tA.getText(), 20, 20);
}
}
class CodeText extends Text {
protected CodeText(TextApplet tApplet) {
super(tApplet);
}
public void draw(Graphics g) {
g.setColor(tA.getColor());
g.setFont(new Font("Monospaced", Font.PLAIN, 12));
g.drawString(tA.getText(), 20, 20);
}
}
public class TextApplet extends java.applet.Applet {
protected Text text;
protected String textVal;
protected Color color;
public String getText() {
return textVal;
}
public Color getColor() {
return color;
}
public void init() {
textVal = getParameter("text");
String textStyle = getParameter("style");
String textColor = getParameter("color");
if (textStyle == "code")
text = new CodeText(this);
else
text = new PlainText(this);
if (textColor == "red")
color = Color.RED;
else if (textColor == "blue")
color = Color.BLUE;
else
color = Color.BLACK;
}
public void paint(Graphics g) {
text.draw(g);
10
}
}
The Text class is more complicated than it should be (there
is too much coupling between the
Text and TextApplet classes). By getting rid of the
reference to a TextApplet object in the
Text class and setting the colour in the paint() method,
one could turn the Text class into an
interface and simplify the strategy classes considerably.
5.1 Rewrite the Text and PlainText classes to do what is
described above. (6)
5.2 Explain the consequent changes that are necessary to
the TextApplet class. (4)
5.3 Write an additional strategy class called FancyText (to
go with your simplified
strategy classes) to allow fancy text to be displayed for
the value "fancy" provided
for the style parameter. It should use the font Font
("Serif", Font.ITALIC, 12).
(3)
5.4 Explain what changes are necessary to the TextApplet
class for this. (2)
21
what is the use of bean managed and container managed with
example?
What is the catch or declare rule for method declarations?
480
I need some details about an employee. i have only the
employee id in my presentation layer(JSP).I entered that ID
and click "Show Details" Button. Question is how the JSP
pass that id to Controller layer and DAO and what mechanism
we are using to retrive data from DB and how the data
passed to JSP as a Output. Please explain in detail.
The following program reads data (details of students) from
a file named students.txt and
converts it into e-mail addresses. The results are written
to a file named studentemail.txt.
students.txt consists of a number of lines, each containing
the data of a student in colon
delimited format:
Last Name:First Name:Student Number
Each input record is converted to an e-mail address and
written to studentemail.txt in the
following format:
the first character of the last name + the first character
of the first name + the last four digits of
the student number + “@myunisa.ac.za”
import java.io.*;
public class EmailConverter {
public static void main(String[] args) throws IOException {
BufferedReader input = new BufferedReader(new FileReader
("students.txt"));
PrintWriter output = new PrintWriter(new FileWriter
("studentemail.txt"));
String line = input.readLine();
while (line != null) {
// Extract the information for each student
String[] items = line.split(":");
// Generate the email address
String email = "" + items[0].charAt(0) + items[1].charAt(0)
+
items[2].substring(4,8) + "@myunisa.ac.za";
email = email.toLowerCase();
// Output
output.println(email);
line = input.readLine();
}
input.close();
output.close();
}
}
Rewrite the class so that it handles possible errors that
may occur. In particular, it should do the
following:
• It should catch at least three appropriate exceptions
that might occur, and display suitable
messages.
• At this stage, the program will not run correctly if
there is an empty line in the input file.
Change the program so that if an empty line is encountered,
an exception is thrown and the
empty line is ignored. This exception should be handled
with the display of a suitable error
message.
• Before the e-mail address is added to the output file,
check if the student number has 8
digits. If not, throw an InvalidFormatException (which the
program should not handle itself)
21
23. Storage space in java is of the form
Stack
Queue
Heap
List
24. What is java code embedded in a web page known as
Applets
Servlets
scriptlets
snippets
25. Which of the following attributes are compulsory with
an <applet> tag?.
code,height & width.
26. What does 'CODEBASE' in an applet tag specify?.
Files absolute path.