Selection Of Invocation Of Overridden Method During Constructor Chaining
May 28, 2014
I don't understand, why when in the constructor of the superclass A the method init() is called (line 4), the overridden version of the subclass is invoked (line 26) and not the superclass version (line 7):
class A {
public A () {
init();
}
public void init() {
System.out.println("test");
[Code] ....
I would have guessed that above code prints
test
1
But instead you get a NPE (because when the constructor of B is invoked
public static void main(String[] args) {
new B();
}
Then there is first the implicit call to super:
public B() {
s = " ";
init();
}
Which is the constructor of A:
public A () {
init();
}
But here now this init() method is not the version of A ( public void init() {
System.out.println("test");
}) but the overriden version of the subclass (B): public void init() {
System.out.println(s+=s.length());
}...
Which throws an NPE of course, because the initialization of s has not occured yet (it happens only after the implicit call to super() has finished (see public B() {
s = " ";
init();
}))
View Replies
ADVERTISEMENT
Aug 26, 2014
can a static method be overridden?
View Replies
View Related
Sep 4, 2014
I would like to know what does it mean when a method is overridden by a class??Like for example when you append an object value to StringBuilder
View Replies
View Related
Mar 19, 2015
I am practicing OCPJP ....
import java.lang.*;
class InvalidValueException extends IllegalArgumentException {}
class InvalidKeyException extends IllegalArgumentException {}
class BaseClass {
void foo() throws IllegalArgumentException {
throw new IllegalArgumentException();
[Code] .....
Which one of the following options correctly describes the behavior of this program? And the answer is (definitely) --> The program will print : InvalidKeyException exception, but when i saw the explanation, it tells
It is not necessary to provide an Exception thrown by a method when the method is overriding a method defined with an exception (using the throws clause).
I don't know, but i think it will compiled because the Exception that is thrown by the foo method in DeriDeri class is inherited from unchecked exception.. so it is not necessary to declare throws statement on its method.. and if the exception was checked exception the answer must be different right?
View Replies
View Related
Mar 5, 2015
For starters here is my code:
Java Code: class A {
int x=5;
}
class B extends A {
int x=6;
}
public class CovariantTest {
public A getObject() {
[Code] ....
And this is the output I get:
sub
5
I am unable to figure out how this is outputting 5 instead of 6. The getObject method of SubCovariantTest is obviously the one being called, and it returns a new B(). So why am I getting class A's x value? I thought since I was getting a B object returned that I would get B's x value.
View Replies
View Related
Jul 20, 2014
I was following a tutorial for libGdx and suddenly became confused by the following syntax:
up.addListener(new ClickListener(){
public void clicked(InputEvent event, float x, float y){
position.y += 1f;
//currentFrame = animation.getKeyFrame(12);
}
});
"up" is basically a text Button:
TextButton up = new TextButton("up", textButtonStyle);
and .addListener is just one of the methods "TextButton" has (actually I think its inherited from "Button" but that doesn't matter).
Basically my question is what's going on inside the parentheses? From what I see its a new instance of "ClickListener" but then suddenly they override an actual method within. Is this simply just a way to override a method from the ClickListener class or is it something else?
View Replies
View Related
May 14, 2015
If a method is overridden but you use a polymorphic (supertype) reference to refer to the subtype object with the overriding method, the compiler assumes you're calling the supertype version of the method.
is this true? maybe i'm misunderstanding it, but i thought the JVM looks at the object at run time and checks the object type. the context of the quote is about checked exceptions, but it seems like the statement should stand regardless of context. but this doesn't back up my experience. for example:
public class Test{
public void print(){
System.out.println("Super");
} public static void main(String[] args){
Test t = new SubTest();
[Code] ....
Will invoke the subclass method. like i said, maybe i'm missing something.
View Replies
View Related
Mar 5, 2014
I'm trying to make a selection sort method that will sort a list of Strings alphabetically.
I have a test list of Strings like so:
Joe, Steve, Oscar, Drew, Evan, Brian, Ryan, Adam, Zachary, Jane, Doe, Susan, Fred, Billy-Bob, Cindy, Mildred, Joseph, Hammer, Hank, Dennis, Barbara
However, whenever I run the method, the element that should go last, Zachary, in this case, ends up getting moved to the front for some reason. I'm not sure why.
I tried changing what the first element was initialized to, to the variable i as that would logically work as well, but it ends up missing the first element in the list.
Java Code:
public static void selectionStringAscendingSort (String[] words){
int i, j, first;
String temp;
for ( i = 1; i < words.length; i++ ) {
first = 0; //initialize to subscript of first element
for(j = i; j < words.length; j ++){ //locate smallest element between positions 1 and i.
if( words[ j ].compareTo(words[ first ]) <0 )
first = j;
}
temp = words[ first ]; //swap smallest found with element in position i.
words[ first ] = words[ i ];
words[ i ] = temp;
System.out.println(Arrays.toString(words));
}
System.out.println(Arrays.toString(words));
} mh_sh_highlight_all('java');
View Replies
View Related
Sep 25, 2014
I was wondering if there is a way to be certain that listeners would be invoked in any specific order? Note that I am referring to servlet specification version prior to version 3.0. As per version 3.0, the ordering followed would be the one in web.xml (Reference: Servlet specification 3.0: Section 8.2.3). This section also says that prior to 3.0 the order of invocation is random.
Possible duplicate entry but reply does not match the specification text : URL...
View Replies
View Related
Nov 11, 2014
I have a question about selection sort. If I had an array of numbers, 1 2 3 4 100 0, and used the selection sort method (below) on the array,would the 0 slowly work it's way down to the end?
Nest loop = full rotation of nest loop
Nest loop 1: 1 2 3 4 100 0
Nest loop 2: 1 2 3 4 100 0
Nest loop 3: 1 2 3 4 100 0
Nest loop 4: 1 2 3 4 100 0
Nest loop 5: 1 2 3 4 0 100
Nest loop 6: 1 2 3 0 4 100
etc.
METHOD:
static void selectionSort(int[] arr){
int n = arr.length;
for(int i = 0;i<n;i++){
int min = i;
for(int j = i+1;j<n;j++){
if(arr[j]<arr[min]){
min = j;
}
}
int temp = arr[i];
arr[i] = arr[min];
arr[min] = temp;
}
}
View Replies
View Related
Oct 21, 2014
How would I modify this version of a selection sort into a recursive method?
public static void selectionSortRecursive(Comparable [] list, int n)
{
int min;
Comparable temp;
for(int index =0; index < n-1; index++){
min = index;
[code]....
View Replies
View Related
Mar 19, 2015
Java Code:
import java.util.ArrayList;
import java.util.Random;
public class NumSorting {
public static int numOfComps = 0,
numOfSwaps = 0;
public static void main(String[] args)
[Code] ....
What is wrong with my code in this sorting program? It won't copy the random generated numbers to the sort method. How to get the random generated numbers to copy to the sort method. Below is what the program is displaying.
Original order : 3 2 5 4 1
Selection Sort
Original order:
[I@7a84e4
Number of comps = 10
Number of swaps = 0
Sorted order : 0 0 0 0 0
View Replies
View Related
Nov 20, 2014
This time I am having difficulties with selection sort method, but not with the method itself (I think). So I need to sort an array and return the result of each step.
This is the main code:
public class Functionality {
public static int[][] selctionsort(int[] a) {
for (int i=0; i<a.length; i++) {
int least = i;
for (int j=i+1; j<a.length; j++)
[Code] ....
And this is the Test folder:
import static org.junit.Assert.assertArrayEquals;
public class PublicTests {
public static void main(String[] args) {
int[] a = new int[] { 35, 7, 63, 42, 24, 21 };
int[][] b = new int[][] { new int[] { 7, 35, 63, 42, 24, 21 },
[Code] ....
Now I am not sure what should I write in return since the 2nd (test) project has int[][] and in my main project I am working with int [].
View Replies
View Related
Mar 19, 2014
I need to implement a separate-chaining hash table from scratch and I don't need to know the code or anything I would just like an explanation of how I would go about doing the algorithm for this perhaps pseudocode and then I can figure out the rest.
View Replies
View Related
Apr 3, 2014
I am attempting to make a CoalescedHashMap<K, V> with internal chaining. It isn't a hard concept, but it needs to extend AbstractSet and implement Map<K, V>.
Map requires a remove method that returns a V(value). AbstractSet extends Collection, which requires a remove method that returns a boolean value. It gives a syntax error either way it is done. This is a standard homework assignment for a junior level class, so there must be some way to deal with this. It is annoying as we do not need to implement the remove method, it just throws and exception.
View Replies
View Related
Nov 11, 2014
I am having an issue with a small part of my project. i am supposed to make a hash table with a file containing words. The file is being passed into my constructor, where i basically just all it "filename" of type string. Im supposed to get the contents of the file and put it into the table. the problem I'm having is making the connection between my constructor and a method called "start" which basically does all the work. Im not sure how to go by doing this, how could i use the variable "filename" from my constructer in my start method?:
import java.io.*;
import java.util.*;
public class WordCount {
//private fields, including your HashMap variable
HashMap<String,Object> hmap =new HashMap<String,Object>();//(table size,load factor)
public WordCount( String infileName){
String filename =infileName;
[Code] .....
View Replies
View Related
Jan 2, 2014
So, I am learning Swing, and Swing Layouts. I just came across a really confusing (for me) line of code.
Java Code:
setLayout(new BorderLayout()); mh_sh_highlight_all('java');
So, this is weird for me because I don't really understand why the BorderLayout class constructor is being initialized as a parameter for the setLayout..
View Replies
View Related
Feb 28, 2014
Passing Information to a Method or a Constructor
They show a line of code that goes like this:
public Polygon polygonFrom(Point[] corners) {
// method body goes here
}
So from what I understand this is a constructor method for a Polygon object from the Polygon class. What I dont get is the name of the method polygonFrom()
Shouldn't a constructor for a Polygon just have the same name as the class? Because from earlier examples in the tutorial it seems to me that this is what has been done
For example:
public Bicycle(int startCadence, int startSpeed, int startGear) {
gear = startGear;
cadence = startCadence;
speed = startSpeed;
}
View Replies
View Related
Aug 1, 2014
Why in this code testSon class void display() method is called instead of testFather class void display()
class testFather
{
void display() {
System.out.println("This is testFather class");
}
testFather() //testFather constructor {
display();
[Code] .....
Output : This is testSon class /* why not This is testFather class*/
This is cons of testSon class
View Replies
View Related
Aug 13, 2014
I have login.jsp and home.jsp.
Each have its own servlets.
When I click Login button from login.jsp, it will navigate to home.jsp.
But before displaying home.jsp from he user, I want to call homeServlet.java's constructor/method.
This is because I want to populate a dropdown from home.jsp from a database.
I'm using MVC2 Servlet/JSP/Bean framework and AMAP, I do not want to execute javascripts/jquery for populating dropdowns.
View Replies
View Related
Sep 14, 2014
I have two questions.
1 - I don't understand why I'm getting an empty stack error when calling the removecard method in my Table class line 13?
2 - I am trying to use a constructor to populate my deck of cards instead of a method when creating my theDeck object in my Table class line 11 but I get the following error:
java.lang.StackOverflowError
at java.util.Vector.<init>(Unknown Source)
at java.util.Vector.<init>(Unknown Source)
at java.util.Stack.<init>(Unknown Source)
at Deck.<init>(Deck.java:7)
at Deck.<init>(Deck.java:34)
public class Card {
String enseigne;
int valeur;
[Code]....
View Replies
View Related
Mar 14, 2015
I have an xml with 'n' number of data which i am parsing,for test i hardcoded without looping has below,now the below line is just parsing and showing the data for index '1' ,i need to loop this and i am not sure how can i do this.How do i find the length of obj and loop,i cannot find any method in SoapObject.I used like below but the data is getting overridden after parsing
for(int i=0;i<obj.getPropertyCount();i++) {
KSoap2ResultParser.parseBusinessObject(obj.getProp erty(i).toString(), getReminder);
}
call in another class
public static void parseBusinessObject(String input, Object output) throws NumberFormatException, IllegalArgumentException, IllegalAccessException, InstantiationException{
[code]...
View Replies
View Related
Jan 27, 2014
How in Java to get the current(overridden) currency symbol from the Windows?
As you know t is possible in Windows (Control Panel->Region->Additional Settings->Currency) change currency symbol to the new one.
For example default is '$' and customer change it to the '€'
And programs (Excel for example) use this new currency symbol, i.e instead of $100 you see €100.
I need emulate similar behavior in Java.
View Replies
View Related
Jan 27, 2014
How in Java to get the current(overridden) currency symbol from the Windows?
As you know you able in Windows (Control Panel->Region->Additional Settings->Currency) change currency symbol to the new one.
And programs (Excel for example) use this new currency symbol.
I need emulate similar behavior in Java.
View Replies
View Related
Mar 15, 2014
why overridden doesn't apply to variables. However, instance variables are stored inside the object.I ran below program and expected to print "two" but it gets printed "one".
class SupCont {
String s = "one";
}
class Cont extends SupCont {
public static void main(String a[]) {
String s = "two";
SupCont c = new Cont();
System.out.println(c.s);
}
}
View Replies
View Related
Mar 29, 2014
public Unit(String code, String name)
{
enrolStudent(student);
this.unitCode = code;
this.unitName = name;
}
public void enrolStudent(Student newStudent){
students = new ArrayList<Student>();
newStudent = new Student(24662496, "Kingsley", " Iwunze");
students.add(newStudent);
}
how can I call this enrolStudent() method on this Unit constructor in another class when I create a new Unit. all I need is to enroll students in units when units are created. below is my create unit method.
public void createUnits( ){
units = new ArrayList<Unit>();
units.add(new Unit("FIT2034", "Java Programming 2"));
units.add(new Unit("FIT2024", "Software Engineering"));
units.add(new Unit("MAT1830","Discrete Maths"));
unit.enrolStudent(new Student(25486321, "Julia", "Garcia"));
unit.enrolStudent(new Student(44589736, "James", "Olivia"));
unit.enrolStudent(new Student(47852103, "Lucky", "Thyriod"));
}
View Replies
View Related