MainActivity.this.year的作用是什么? -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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-03 10:17:47 1794 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:26:06
    赞同 展开评论 打赏
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载