如何在一个java主类中引用另一个类的方法?代码如下: 10

importjava.util.Scanner;importjava.*;publicclassMax2{publicstaticvoidmain(Stringarg[]... import java.util.Scanner;
import java.*;
public class Max2{
public static void main(String arg[]){
Scanner scanner=new Scanner(System.in);
max m=new max();
int a=scanner.nextInt();
int b=scanner.nextInt();
m.max1();
}
}

这个是要引用到上面主类中的类:
package java;
public class max{
public static void max1(int a,int b){

if(a>b)
System.out.println(a);
}
}

运行结果是无法访问max
错误的类文件: .\max.java。
是代码出错了还是哪里的错,该怎么改正?
展开
 我来答
云之彼端e约定
2012-10-10
知道答主
回答量:14
采纳率:0%
帮助的人:7.2万
展开全部
有两种可能,第一种是你把这两个类放在了不同的包中,
我直接赋值粘贴你的代码新建了一个包test2,创建了这两个类,记得把你的m.max1(a,b);参数加上,(并且输入的时候注意先输入大的数字,比如3,2就会输出3,因为你的代码如果输入2,3则没有任何显示)
以下是可行的:
package test2;
public class max{
public static void max1(int a,int b){
if(a>b)
System.out.println(a);

}
}

//注意在同一个包中创建
package test2;
import java.util.Scanner;
public class Max2 {
public static void main(String arg[]) {
Scanner scanner = new Scanner(System.in);
max m = new max();
int a = scanner.nextInt();
int b = scanner.nextInt();
m.max1(a,b);
}
}

如果你不想在同一个包中创建,那就加一个语句,比如你的max类写在Package test1中,那就加这句import test1.max;
代码如下:
package test2;
import test1.max;//在这里加入了引入包
import java.util.Scanner;
public class Max2 {
public static void main(String arg[]) {
Scanner scanner = new Scanner(System.in);
max m = new max();
int a = scanner.nextInt();
int b = scanner.nextInt();
m.max1(a,b);
}
}

第二种情况是:你的确是在同一个包中创建了还是不行,那估计是因为你的包里面还有别的很多class,相互影响了,试试新建一个工程,新建一个包,应该可以解决
凌绝顶览天下
2012-05-04
知道答主
回答量:3
采纳率:0%
帮助的人:4446
展开全部
方法为什么定义成static的呢,这样的话不用new直接用max调用就行啊 ,调用时没参数,不报错啊,还想编译
追问
加入参数依然报错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友c6433f952
2012-05-04 · TA获得超过135个赞
知道答主
回答量:158
采纳率:0%
帮助的人:97.2万
展开全部
静态方法不用创建实例,直接max.max1(a,b);调用就可以了。
追问
按您的方法试了一下,还是不行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangxiao1428
2012-05-04 · 超过15用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:43万
展开全部
Max2中调用max的静态方法max1没传递参数,应该是编译都会报错的
更多追问追答
追问
加入参数后还是一样的错误提示
追答
什么错误?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
区块链小趋势
推荐于2017-10-06 · TA获得超过2515个赞
知道小有建树答主
回答量:1088
采纳率:0%
帮助的人:700万
展开全部
正解:
import java.util.Scanner;
import java.*;
public class Max2{
public static void main(String arg[]){
Scanner scanner=new Scanner(System.in);
max m=new max();
int a=scanner.nextInt();
int b=scanner.nextInt();
m.max1(a,b);
}
}
更多追问追答
追问
不行,加入参数后依然是那个错误提示
追答
public class 后面的名字一定要和你java文件名字同名(去除后面的 .java 后缀)
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式