|
..That's what I said - this does not look like a simple homework-project that can be simply launched from the command line.
Why would you even want to work on the command line? All you're asking for is to run it outside of your IDE.
So I recommend to export the project in the given way and that's it. Netbeans will do what is is supposed to do - build your application.
No need to waste hours of time on fuzzy command line arguments. Better get a nice ice cream and watch Netbeans do the build
regards Torsten
I never finish anyth...
|
|
|
|
|
When we assign a subclass object to its superclass reference then the superclass reference can only access the methods that are in the superclass, it can't even the aceess its overridden methods in subclass.
if the above lines are true then how the following code can works ...
class a
{
int x;
void show()
{
System.out.println(x);
}
}
class b extends a
{
void show()
{
System.out.println("in subclass");
}
void show2()
{
System.out.println("in show2");
}
}
class Main
{
public static void main(String args[])
{
b bRef=new b();
a aRef=new b(); // why this line prints "in subclass". How a reference access the subclass?
aRef.show();
bRef.show2();
}
}
|
|
|
|
|
See the note about implicit casting in this page[^] of the Java Tutorials.
Also please put your code between <pre> tags for proper formatting.
The best things in life are not things.
|
|
|
|
|
gateway23 wrote: a aRef=new b(); // why this line prints "in subclass". How a reference access the subclass?
A reference points to an object.
Your reference points to an object of type 'b'.
|
|
|
|
|
gateway23 wrote: a aRef=new b(); // why this line prints "in subclass". How a reference access
the subclass?
It is because eventhough you have declared aRef to be of class 'a', it acutally holds an instance of class 'b' at runtime. That is what Polymorphism is all about. That's not a problem, that's the expected behavior.
|
|
|
|
|
It doesn't hold it. The heap holds it. It points to it.
|
|
|
|
|
Well, that's what I meant. Don't read the word "holds" literally
|
|
|
|
|
Shameel wrote: Don't read the word "holds" literally
That is not the point. If you must give a technical answer then make sure it is accurate and clear. Remember, many of these questions are asked by people who do not have a lot of background knowledge or experience and rely on these answers to help them in their learning. The difference between "holds" and "points to" may be crucial to a new developer.
The best things in life are not things.
|
|
|
|
|
You're right. I'll make sure I choose the right words to explain my answer. Thanks for pointing out.
|
|
|
|
|
Hello friend...
Just add this line in main()
System.out.println("aRef's type is " + aRef.getClass().toString());
and output for this line must me : aRef's type is b
when you call aRef.show() then first this call must be resolved by class of aRef's object if fuction show() not found then jvm try to resolved it from super class.
|
|
|
|
|
in java a static method can access only other static member .
But,how static main method access non-static member of other class....?
Please tell me... sir/mam
|
|
|
|
|
do not. That's bad style.
If you need static final values, put them in an Interface:
public interface IInterface {
public class Def{
public static final String
VALUE1= "Value1",
VALUE2 = "Value2";
}
}
You can then access these values like IInterface.Def.VALUE1
EDIT:
The main-class should instance a Object. Not much more to do in the main, leave the rest to the new Object:
public static void main(String[] args) {
new MyObject();
}
regards Torsten
I never finish anyth...
|
|
|
|
|
I don't like the style you've shown here for the main method. It means that your entire application is running within the scope of MyObject's contructor, which just always feels wrong to me. A constructor is there to construct an object and get it ready to do work, not to do the actual work.
I would have two classes:
public class MyApp {
public static void main(String[] args) {
MyWorker w = new MyWorker();
w.run();
}
}
public class MyWorker implements Runnable {
public void run() {
}
}
That way MyWorker can be regarded as a reusable service, and the startup code is completely separate.
|
|
|
|
|
I agree on that - luckily now it's up to you to explain all about Runnable and Thread
regards Torsten
I never finish anyth...
|
|
|
|
|
If you have a non-static member variable and the access modifier of the class allows that member to be exposed then you must have an instance of the class to access it.
|
|
|
|
|
A static member of a class is constrained to access only the static member of the same class. It can, however, access any non-static member (if it is accessible from outside) of any class (including the class in which it is defined) if it has an instance variable to access the non-static member.
|
|
|
|
|
Actually non-static members are accessed via an object. An static member function can access non-static member of it's class also but through an oject... like--
class TestClass{<br />
<br />
int i_m_belongs_to_an_object_of_TestClass;
<br />
static int i_m_belongs_to_TestClass;
<br />
public static void function(){<br />
i_m_belongs_to_TestClass = 0;<br />
<br />
TestClass obj = new TestClass();<br />
obj.i_m_belongs_to_an_object_of_TestClass = 0;
<br />
OtherClass objOther = new OtherClass();<br />
objOther.i_m_belongs_to_an_object_of_OtherClass = 0;
<br />
int someInt = OtherClass.i_m_belongs_to_OtherClass;
}<br />
}<br />
<br />
class OtherClass<br />
{<br />
int i_m_belongs_to_an_object_of_OtherClass;
<br />
static int i_m_belongs_to_OtherClass;
}code><br />
<br />
Only one copy is allocated for static data members, one copy per object for non-static data members
|
|
|
|
|
sir/mam
i need to know the working of join() ....
i tried books and net but i didn't got it.
Please tell me exactly why we use join() function and what happens when we call the join()..
Thanks
|
|
|
|
|
|
I tried to follow this link and got a security warning that the website was trying to open a program on my computer. No idea what it was or why, but that sort of thing makes me nervous.
|
|
|
|
|
no thread here.
regards Torsten
I never finish anyth...
|
|
|
|
|
To be fair, the javadoc for this method isn't very clear:
Waits for this thread to die.
That's it. Not the most helpful javadoc I've ever seen.
The Oracle Java tutorial[^] is better:
The join method allows one thread to wait for the completion of another. If t is a Thread object whose thread is currently executing,
t.join();
causes the current thread to pause execution until t's thread terminates.
I think that's quite clear and succinct.
|
|
|
|
|
thanks david..it helps alot.
|
|
|
|
|
To ensure that a thread (referenced by some reference say threadRef) is finished, then you join() on that reference. like threadRef.join() if that thread is finished, then join() returned immediately otherwise join() will blocked until that thread get finished.
For example if you create three thread (a, b, c) for doing three different task A, B, C, from your main thread, but you need some initialization processing (which must be executed before start-up of a, b, c) and shutdown processing (which must be executed after finishing of a, b, c) then you may code like this
// in main()
System.out.println("System started");
initialization(); // a, b, c are not running yet.
System.out.println("initialization complete ");
Thread a = new Thread(new Task_A_RunnableClass());
Thread b = new Thread(new Task_B_RunnableClass());
Thread c = new Thread(new Task_C_RunnableClass());
a.start();
System.out.println("Thread "a" started ");
b.start();
System.out.println("Thread "b" started ");
c.start();
System.out.println("Thread "c" started ");
//Now wait for all thread to finished.
a.join();
System.out.println("Thread "a" finiished ");
b.join();
System.out.println("Thread "b" finiished ");
c.join();
System.out.println("Thread "c" finiished ");
shutdown(); // a, b, c are finished now.
System.out.println("System shutdown..... ");
|
|
|
|
|
Hi all,
I have page on which data is loaded from database it takes more time to load the page
so i want to display the loading ..... image which will intimate user to wait.
Any suggestions are welcome
Thanks & Regards
Yogesh
|
|
|
|