import java.util.*;
class Cat
{
String name;
int age;
float size;
int times;
public void miaow(int times)
{
Scanner input=new Scanner(System.in);
times=input.nextInt();
System.out.println("这只小猫咪叫了"+times);
} public static void main(String[] args)
{
Cat cat=new Cat();
cat.age=10;
cat.name="xiaohuamao";
cat.size=1.01f;
cat.miaow(times); }
}
打红线的部分,我这么写不对,为什么一定要写成 cat.miaow(cat.times); 请给我详细讲下这个问题,谢谢各位了。
class Cat
{
String name;
int age;
float size;
int times;
public void miaow(int times)
{
Scanner input=new Scanner(System.in);
times=input.nextInt();
System.out.println("这只小猫咪叫了"+times);
} public static void main(String[] args)
{
Cat cat=new Cat();
cat.age=10;
cat.name="xiaohuamao";
cat.size=1.01f;
cat.miaow(times); }
}
打红线的部分,我这么写不对,为什么一定要写成 cat.miaow(cat.times); 请给我详细讲下这个问题,谢谢各位了。
是静态方法,不能引用非静态的成员times(如:cat.miaow(times);)
如果
int times;
改成
static int times;
cat.miaow(times);就没有问题
是静态方法,不能引用非静态的成员times(如:cat.miaow(times);)
如果
int times;
改成
static int times;
cat.miaow(times);
或
这里的times和Cat里的times根本不一样,如果要你这样写,就必须声明一个times变量,或者实例化Cat类,然后调用属性times。
是静态方法,不能引用非静态的成员times(如:cat.miaow(times);)
都已经很明白了,结贴吧