Solved

Basic java question - Calling a class from a class

Posted on 2011-09-07
9
175 Views
Last Modified: 2012-05-12
I am writing class 1 and it sets in directory A.  With in class 1 I need to call class 2 and it sets in directory B

I am not sure how to specify in my class 1 to run class 2
0
Comment
Question by:jkteater
  • 8
9 Comments
 
LVL 47

Expert Comment

by:for_yan
ID: 36498359

You need to make sure hwne you compile and execute Class1 that you have
the directory where you have Class2 present in the classpath
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36498366
CLASSPATH can be defined either by enrinement variable CLASSPATH
or using swich -cp before your class name  on command line - both for javac and for java
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36498386

Make sure that neither Class1 nor Class2 have package statenemnet on top.
If so then if your defaiult folder is A
then in the command you can say:

C:\path\A> javac -cp .;c:\foldres_path\B  Class1.java

and the same during execution:

C:\path\A>java -cp .;c:\foldres_path\B  Class1
 
I assume that you are on Windows

0
 

Author Comment

by:jkteater
ID: 36498426
The classpath is ok - I am having problems with the code

 public Object execute(final ExecutionEvent event) throws ExecutionException {
      
      
      Display.getDefault().asyncExec(new Runnable() {
         public void run() {
            ediBaseDialog();   <===  ediBaseDialog is a class sitting in dir B        
         }
      });
/*

Open in new window


I get a  error saying that ediBaseDialog is undefined
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 47

Accepted Solution

by:
for_yan earned 125 total points
ID: 36498430
If you have package statement in Class2 then it should be located in certain folder relative to the folder
mentioned in CLASSPATH - and the relative location is determined by package

So if say Class2 satrts with the line

package com.company.pack;

then you should place you Class2.java into the folder

c:\foldres_path\B\com\company\pack

(assuming you are using the same command as above).
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36498439

 ediBaseDialog();   - is not a class - it is a method - is irt a static maethod or not ?
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36498449


if it is staic method then you should clali this way:

Class2.ediBaseDialog();  

Class2 is obviously the name of your class conatining this static method
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36498455
In this case if Class2 will be accessible through CLASSPATH as I mentioned above it will execute static method of Class2
0
 
LVL 47

Expert Comment

by:for_yan
ID: 36498480
If
ediBaseDialog();  
is an instance metyjhod, then you first need to create instance of Class2, say tlike this

Class2 cl2 = new Class2();
cl2. ediBaseDialog();  

But in this case maybe you need to use some other constructore - maybe it requires some parameters,
but anyway if it is an instance method of Class2, then you first have to create an instance of the Class2 object
and then invokke method on that instance
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction This article is the second of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers the basic installation and configuration of the test automation tools used by…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
Viewers will learn one way to get user input in Java. Introduce the Scanner object: Declare the variable that stores the user input: An example prompting the user for input: Methods you need to invoke in order to properly get  user input:
Viewers will learn how to properly install Eclipse with the necessary JDK, and will take a look at an introductory Java program. Download Eclipse installation zip file: Extract files from zip file: Download and install JDK 8: Open Eclipse and …

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now