开发者社区> 问答> 正文

MainActivity.this.year的作用是什么?

datePicker.init(year,month,day,new DatePicker.OnDateChangedListener(){

        @Override
        public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
            //获取year属性,必须是MainActivity.this.year获取,因为监听是内部类
            MainActivity.this.month=month;
            MainActivity.this.day=day;
            showDate(year,month,day,hour,minute);
        }
    });

MainActivity.this.year 这个语句在这里的作用是什么?

展开
收起
爵霸 2016-06-07 11:31:58 1965 0
1 条回答
写回答
取消 提交回答
  • 你在MainActivity这个类中有month这个变量,而在onDateChanged方法的参数中也有这个变量,根据就近原则,在onDateChanged写的month变量就是表示onDateChanged方法参数中的变量,一定要表示MainActivity中的month变量,就必须写全名,MainActivity.month或者MainActivity.this.month或者this.month(onDateChanged方法所属的类是MainActivity,因此this在这里就表示MainActivity)。
    完整的,这句的意思就是将onDateChanged方法内的month变量值赋给MainActivity类内的month变量

    2019-07-17 19:29:41
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载