关于数组定义,初始化问题

关于数组定义,初始化问题

public class Subject {

private Student[] myStudents=new Student[200];

//private Student[] myStudents

//myStudents=new Student[200];

}

//两句的功能应该是和第一句的一样,只是分成两步走,为什么会出错?错误提示是:Syntax error on token ";", , expected

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
chrismorgen 2018-04-18 11:20:15

错误提示的原因是你少写了一个分;在下图位置

http://img1.sycdn.imooc.com//climg/5ad6b10300019d5702600088.jpg

并且数组的创建你要写在方法体中,将myStudents = new Student[200];写在方法体中。这就是这两种方式的区别,第一种是声明时创建数组对象,第二种是先声明再创建数组对象,如果我的建议解决了你的问题,请采纳,祝学习愉快!

  • 提问者 慕粉1473412646 #1
    将myStudents = new Student[200];写在方法体中,为什么方法体外就不行了? private Student[] myStudents=new Student[200];这个不也是在方法体外的吗?
    2018-04-18 11:24:08
  • chrismorgen 回复 提问者 慕粉1473412646 #2
    声明语句可以写到方法体外,myStudents=new Student[200]属于一般语句,不能直接写到方法体外,这是java语法的规定。如果我的建议解决了你的问题,请采纳,祝学习愉快!
    2018-04-18 11:58:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师