Java 标记“”上的语法错误;开始;。非常简单的代码
我正试图学习一些java/android开发,但我真的很难掌握基础知识 我的代码看起来像这样Java 标记“”上的语法错误;开始;。非常简单的代码,java,android,Java,Android,我正试图学习一些java/android开发,但我真的很难掌握基础知识 我的代码看起来像这样 package com.example.app_james3; 导入android.media.MediaPlayer; 导入android.os.Bundle; 导入android.app.Activity; 导入android.view.Menu; 公共类MainActivity扩展了活动{ MediaPlayer media=MediaPlayer.create(此为R.raw.按钮); medi
package com.example.app_james3;
导入android.media.MediaPlayer;
导入android.os.Bundle;
导入android.app.Activity;
导入android.view.Menu;
公共类MainActivity扩展了活动{
MediaPlayer media=MediaPlayer.create(此为R.raw.按钮);
media.start();//此行给出错误:标记“start”上的语法错误,该标记后面应该是标识符
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(R.menu.main,menu);
返回true;
}
}
有人能提供建议让这条非常简单的线路工作吗?我复制了其他代码,因此我相当确信语法是正确的。在Java中,所有语句(任何不声明变量或类的语句)都必须放在方法或构造函数中<代码>媒体。开始()代码>是一条语句。因此,你应该把它放在一个方法中
因为media.start()代码>应在接近启动时间时执行,将其放入onCreate
:
MediaPlayer media;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Your initialization code goes here:
media = MediaPlayer.create(this, R.raw.button);
media.start();
}
您必须在活动中声明变量,但当您在函数中或在setcontentview之后从xml初始化值时。
您还必须阅读以下链接:-
非常感谢,我知道如果这还不知道的话,人们会对这些方式表示不满。。。我暂时不能接受你的回答,但我很快就会接受。
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
MediaPlayer media=MediaPlayer.create(this, R.raw.button);
media.start(); // THIS LINE IS GIVING ERROR: Syntax error on token "start", Identifier expected after this token
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}