好吧我在java中有点新,我在一个类中制作了这个平均程序,但现在如果我想从另一个类调用它,那么我该怎么做?我尝试了一些对象的东西,但很难理解。 这是代码,我希望这个程序在我调用时启动。
package Gangsta;
import java.util.Scanner;
public class okidoki {
public static void main(String []args){
Scanner input = new Scanner(System.in);
double average, tests, grades, total = 0;
int cunter = 1, start = 0;
System.out.println("Press 2 to start averaging, or press 1 to end");
start = input.nextInt();
while (cunter<start){
System.out.println("Enter how many tests u have");
tests = input.nextDouble();
System.out.println("Enter tests grades");
int counter = 0;
while (counter<tests){
counter++;
grades = input.nextDouble();
total = grades+total;
}
average = total/tests;
System.out.println(average);
System.out.println("Press 3 to end or 1 to average again");
cunter = input.nextInt();}
}
}
这是我想要执行它的代码
package Gangsta;
public class tuna {
public static void main(String []args){
okidoki okidokiObject = new okidoki();
System.out.println(okidokiObject);
}
}
答案 0 :(得分:2)
在java中,main
方法是程序的主要(它在名称中)入口点。也就是说,程序中只有一个main
。然而,如果你想让你的代码包装在另一个类中,那就去做吧:
public class MyClass {
public void myFancyMethod() {
Scanner input = new Scanner(System.in);
//....rest of
//....your code
counter = input.nextInt();
}
}
并访问它:
MyClass myClassObject = new MyClass();
myClassObject.myFancyMethod();
你应该真正开始阅读(或再次阅读)面向对象编程语言的基础知识,命名约定等,因为这是你应该理解的,以便在编程方面取得进展。
答案 1 :(得分:1)
现在,您可以在tuna.java中执行此操作以实现您的目标:
package Gangsta;
public class tuna {
public static void main(String []args){
okidoki okidokiObject = new okidoki();
okidokiObject.main()
}
}
System.out.println(okidokiObject)
打印Gangsta.okidoki@659e0bfd
,因为它是对象的哈希码(Hashcode类似于ID,请参阅Object toString()
)。您通常不想打印对象,而是调用它们的方法。
答案 2 :(得分:0)
如果你将okidoki类中的main方法更改为构造函数,它将完全按照你的意愿工作!
示例:强>
<强> Example.java 强>
public class Example {
public Example() {
System.out.println("Example class constructed");
}
}
<强> Main.java 强>
public class Main {
public static void main(String[] args) {
System.out.println("Program started.Constructing Example class");
Example exClass = new Example();
System.out.println("Program finished.");
}
}