public class class1 { public static void main(String args[]) { System.out.println("main"); }
public void test(String name) { System.out.println("test"); }
public void test(StringBuffer name){} public void test(String name){} }
[ November 26, 2005: Message edited by: Arnb Sen ]
Regards,<br />Arnab
Ulf Dittmer
Marshal
Joined: Mar 22, 2005
Posts: 35241
7
posted
0
It doesn't. You can't have two methods declarations with the same signature. You can however, as the class does, overload 'test' by methods with different signatures.
These are set of codes which I wrote. Some are overloading, some are overriding and some are simlpe hiding.
I have clasified them. Are they correct ?
FIRST CODE
SECOND CODE
THIRD CODE
FOURTH CODE
FIFTH CODE
SIXTH CODE
Categories : Overloading, Overriding, Hiding
1. FIRST CODE - Creating an instance of Base class in the subclass. Which cateory does this fall in ? 2. SECOND CODE - Is this Overriding ? Code does not compile. Method "methodInBase" has different return type in subclass as compared to that of the Base class. 3. THIRD CODE - 4. FOURTH CODE - This is Overriding 5. FIFTH CODE - This is Overriding as well 6. SIXTH CODE - This will not compile because sublass variable cannot reference an instance of Base class.
Sowjanya Chowdary
Ranch Hand
Joined: Aug 22, 2005
Posts: 35
posted
0
Arnb,
1. FIRST CODE - overloading 2. SECOND CODE - This is not a valid overriding or overloading. That is the reason for compilation error. 3. THIRD CODE - same as above 4. FOURTH CODE - This is Overriding. 5. FIFTH CODE - This is Overriding. 6. SIXTH CODE - This is also Overriding. But, compilation error because base class object can't be assigned to a subclass reference(class2 c2 = new class2Base() . Hope this helps.
Stuart Ash
Ranch Hand
Joined: Oct 07, 2005
Posts: 637
posted
0
Originally posted by Arnb Sen: Why does this code compile ?
[ November 26, 2005: Message edited by: Arnb Sen ]
What made you say it compiles??
ASCII silly question, Get a silly ANSI.
Arnb Sen
Ranch Hand
Joined: Feb 23, 2004
Posts: 145
posted
0
Hi Amrutha,
Thanks a lot. Helps
Hi Stuart,
The code was slightly different when I was compiling in textpad and then to make it neater while posting, I modified some of the names.
When Ulf pointed out that it is not compiling, I cross-checked the code that I had and the one I posted and realised that while changing the names, I made an error.
Stuart Ash
Ranch Hand
Joined: Oct 07, 2005
Posts: 637
posted
0
Ah ok
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to
run our stuff on 16 servers instead of 3.