@Override无效的原因是什么?解决办法

详细请点击:http://www.verydemo.com/demo_c131_i35104.html

@Override无效的原因是什么?
public void onClick(View v),想在前头加个@Override,报如下错误:
Multiple markers at this line
- The method onClick(View) of type new View.OnClickListener(){} must override a superclass
method
- implements android.view.View.OnClickListener.onClick
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->/*
* 文件名称:Pit.java
* 描 述:个人所得税
*/

package demo.android.pit;

import java.text.DecimalFormat;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

/*
* 类介绍:程序入口地址
*         AndroidManifest.xml文件的activity android:name="."决定
*         @Override关键字的函数,一般是由系统调用的
*/
public class Pit extends Activity {
    private static final String TAG = "Pit"; //log标签
    
    private Button m_button_submit; //提交
    private EditText m_field_income; //收入
    private EditText m_field_insurance; //保险
    private TextView m_view_result; //结果输出
    
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        findCtrlsFromID(); //从资源里获取交互界面的控件
        setListensers(); //按钮响应函数
    }
    
    /*
     * 函数介绍:从资源里获取交互界面的控件
     * 输入参数:无
     * 输出参数:无
     * 返回值  :无
     */
    private void findCtrlsFromID() {
        Log.v(TAG, "findCtrlsFromID enter");
        
        m_button_submit = (Button)findViewById(R.id.submit);
        m_field_income = (EditText)findViewById(R.id.income);
        m_field_insurance = (EditText)findViewById(R.id.insurance);
        m_view_result = (TextView)findViewById(R.id.result);
        
        Log.v(TAG, "findCtrlsFromID exit");
    }
    
    /*
     * 函数介绍:按钮响应函数
     * 输入参数:无
     * 输出参数:无
     * 返回值  :无
     */
    private void setListensers() {
        Log.v(TAG, "setListensers enter");
        
        m_button_submit.setOnClickListener(new Button.OnClickListener() {
            //@Override //在BMI程序中,此是有效的。不知为何,此地无效?
            public void onClick(View v) {
                Log.v(TAG, "setListensers : onClick enter");
                
                DecimalFormat nf = new DecimalFormat("0.00");
                try {
                    //取得输入参数
                    double income = Double.parseDouble(m_field_income.getText().toString())/100;
                    double insurance = Double.parseDouble(m_field_insurance.getText().toString());
                    
                    //算法
                    double PIT = insurance / (income * income);
                    
                    //结果输出
                    m_view_result.setText(getText(R.string.pit_result) + nf.format(PIT));
                }
                catch (Exception err) {
                    Toast.makeText(Pit.this, R.string.input_error, Toast.LENGTH_SHORT).show();
                }
                
                Log.v(TAG, "setListensers : onClick exit");
            }
        });
        
        Log.v(TAG, "setListensers exit");
    }
}


------解决方案--------------------------------------------------------
JDK 版本问题 换一个JDK 就可以了,我遇到过就 是这样解决的!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值