public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
           
            btn.setOnClickListener(new OnClickListener()
                {                       
                        @Override
                        public void onClick(View v)
                        {
                            public static final String MY_ACTION = "com.alex.app.intent";
                                Intent intent=new Intent();
                                intent.setAction(MY_ACTION);
                                startActivity(intent);
                        }
                });        
    }
标记为红色的地方提示限定词有错误,即不能定义为public static的,为什么

解决方案 »

  1.   

    在方法里定义的变量都是临时变量
    public是用在成员变量上的,临时变量不能用这个限定词。你要么把定义移到方法外,做成员变量;要么把public去掉
      

  2.   

    Java基础不扎实阿。
    public 定义为成员变量
      

  3.   

    简单的说就是PUBLIC的方法里面声明PUBLIC的变量毫无意义
      

  4.   

    首先public不对,楼上已经说了,其次static不对,静态变量是加载该类的时候就初始化的。只有final是允许在这里使用的。