What restrictions are placed on method overloading and
method overriding?
Answer Posted / aditya mohata
in method overloading we hav to hav the methods in the same
class n they hav to hav diff signatures so as to avoid
ambiguity.they hav to hav the same method name.
in method overriding we hav to hav the same name of the
methods n hav to hav them in different classes with same
signatures.
| Is This Answer Correct ? | 12 Yes | 5 No |
Post New Answer View All Answers
Does java map allow duplicates?
Is char a data type in java?
How do you declare a destructor in java?
What is literal example?
What is methodological theory?
What is maximum size of arraylist in java?
What is a final class in java?
Explain about fail fast iterators in java?
Difference between linkedlist and arraylist.
What is the difference between equals() and == in java?
Can each java object keep track of all the threads that want to exclusively access it?
What is the default value of float and double datatype in java?
What exactly is methodology?
Can we print null in java?
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)