甲鱼飞鱼 发表于 2021-7-2 11:21:46

明明定义Student了,Student cannot be resolved to a type

package com.atguigu.java;
public class StudentTest {
        public static void main(String[] args) {
               
                Student[] stu = new Student ;
                for(int i = 0; i < stu.length; i++) {
                        stu.number = i + 1;
                        stu.state = (int)(Math.random()*(6-1+1)+1);
                        stu.score= (int)(Math.random()*(100-0));
                        if(stu == 3) {
                                System.out.println(stu.info);
                               
                }
        }
       
class Student{
int number,state,score;
public String info() {
                returnstate+"年级学生学号为:" + number + "成绩为:" + score+ "/t" ;
        }

               
                }
        }
}
       
               

       


甲鱼飞鱼 发表于 2021-7-2 11:23:23

第五行报错Student cannot be resolved to a type

wsw530 发表于 2021-7-2 12:40:24

本帖最后由 wsw530 于 2021-7-2 12:52 编辑

甲鱼飞鱼 发表于 2021-7-2 11:23
第五行报错Student cannot be resolved to a type
错误地方有三个
1、java中的对象都需要用new 来生成,你这new Student,只是生成了数组,而没有创建一个个Student对象,需要在for循环第一行,实例化对象 stu = new Student();
2、if(stu == 3)这里stu是一个对象不能呢个直接和数字3去比较,建议改为stu.number == 3
3、 System.out.println(stu.info);对象调用函数 对象.方法名(参数),建议改为System.out.println(stu.info());

甲鱼飞鱼 发表于 2021-7-2 12:53:02

wsw530 发表于 2021-7-2 12:40
错误地方有三个
1、java中的对象都需要用new 来生成,你这new Student,只是生成了数组,而没有创建 ...

改完了还是报错Student cannot be resolved to a type{:10_266:}

甲鱼飞鱼 发表于 2021-7-2 13:09:33

甲鱼飞鱼 发表于 2021-7-2 12:53
改完了还是报错Student cannot be resolved to a type

改正确了,非常感谢
页: [1]
查看完整版本: 明明定义Student了,Student cannot be resolved to a type