Reputation: 37
I am trying to access a static
method from another class, like:
package mersennepackage;
public class A {
public static void foo() { ... }
}
and
import java.primespackage.mersennepackage.*;
public class B {
public static void main(String[] args) {
A.foo();
}
}
I have compiled A.java
and the class file is on my desktop at:
/Users/usr/Desktop/primespackage/mersennepackage
.
Now, how do I use A.java
from B.java
? Can someone tell me the compilation and execution commands? I work on a MacOsx platform.
My complete code is class MersennePrime
as A
:
package mersennepackage;
public class MersennePrime {
public static boolean checkForMersenneprime(int n) {
int i;
double d;
d = Math.log(n + 1) / Math.log(2);
i = (int)(Math.floor(d));
if (d - i == 0)
return true;
return false;
}
}
and class TwinPrimes
as B
:
import java.util.*;
import java.primespackage.mersennepackage.*;
class TwinPrimes {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number");
System.out.println(MersennePrime.checkForMersenneprime(sc.nextInt()));
}
}
Upvotes: 1
Views: 2520
Reputation: 88
first you need to edit package name in MersennePrime class to primespackage.mersennepackage
package primespackage.mersennepackage;
public class MersennePrime{
public static boolean checkForMersenneprime(int n){
int i;
double d;
d=Math.log(n+1)/Math.log(2);
i=(int)(Math.floor(d));
if(d-i==0)
return true;
return false;
}
}
and fix import statement like this
import java.util.*;
import primespackage.mersennepackage.*;
public class TwinPrimes{
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
System.out.println("Enter the number");
System.out.println(MersennePrime
.checkForMersenneprime(sc.nextInt()));
}
}
than zip the primespackage folder/dirctory
and rename the primespackage.zip to primespackage.jar
next use flowing commend to compile:
javac -cp "primespackage.jar" TwinPrimes.java
-cp is used to jar files to class path
and this commend to run :
java -cp "primespackage.jar" TwinPrimes
Upvotes: 2