(做项目中遇到的基础的但是很重要的概念)
来源:互联网 发布:linux系统自启动脚本 编辑:程序博客网 时间:2024/06/09 16:28
一,构造函数
举个例子:
这里有一个MovieDetailAdapter
private class MovieDetailAdapter extends RecyclerViewCommonAdapter<MovieDetailBean.Casts>{ public MovieDetailAdapter(Context mContext, List<MovieDetailBean.Casts> list) //构造函数可以里面的参数可以改变,重载 { super(mContext, list, R.layout.view_list_casts); }它继承它的父类
很明显这是父类的构造函数。
public RecyclerViewCommonAdapter(Context mContext, List<T> list, int layoutResId) { this.mContext = mContext; this.mList = list; this.layoutResId = layoutResId;}但是它继承的时候第三个参数即layout布局参数没有继承。但是super的时候又可以使用这个参数。
这个问题是我在使用MovieDetailAdapter的时候发现了,一开始的时候MovieDetailAdapter使用的是这样的
private class MovieDetailAdapter extends RecyclerViewCommonAdapter<MovieDetailBean.Casts>{ public MovieDetailAdapter(Context mContext, List<MovieDetailBean.Casts> list,int layoutResid) //构造函数可以里面的参数可以改变,重载 { super(mContext, list, R.layout.view_list_casts); }但是使用它的时候会报错
//处理这个RecycleView里 的照片了所以只能使用上面的继承两个参数,但是构造函数的super在这里有什么用,layout怎么传进来的。我又温习了构造函数的知识点,构造器是java中创建对象的时候通过new 关键字调用构造器,此时系统会对为该对象分配内存空间,只能通过内部的this关键字访问,当构造器完成时,该对象可以通过外部访问,并把此对象赋给另一个引用性变量。MovieDetailAdapter detailAdapter = new MovieDetailAdapter(MovieDetailActivity.this, movieDetailBean.getCasts());
这个属于构造器的重载,就是形参列表不同罢了,但是super在这里的用处了
使用构造器重载的时候需要注意:
如果有多个有参的构造器,其中,一个构造器的参数包含另一个构造器的参数如
public Apple(String name,String color){
this.name=name; this.color =color}
public Apple(String name,String color,double weight){
this.(name,color);
this.weight = weight;}
且调用另一个重载构造器,只能在第一行使用。
重载发生在同一个类中的多个同名方法中间,重写发生在子类和父类的同名方法之间(方法名,形参列表相同)
super 用处是。调用父类被覆盖的实例方法,不是子类中重写的。从super 的这个词的意思就知道。是超类的方法。
这里的super 正是在子类中调用父类的构造器,前面说的一个构造器调用另一个重载的构造器是用this 。
supr();调用父类构造器执行初始化的过程。
未完
0 0
- (做项目中遇到的基础的但是很重要的概念)
- Windows内核字符串的操作(基础,但是很重要)
- 做最好的排名基础优化很重要
- java中不常用但是很重要的几个关键字解析
- 网络爬虫(三)------宽度优先爬虫(一个的基础,简单但是很重要哦)
- 做项目过程中遇到的问题
- 基础真的很重要
- 项目中要用到的,很重要
- 一些很简单但是很重要的东西
- 遇到对的人很重要!
- 网页设计中很重要的概念div+浮动..
- 网站设计中很重要的概念div+浮动
- 网站设计中很重要的概念div+浮动
- 【MFC】:MFC中很重要的概念之控件变量
- 在做项目的过程中TabHost遇到的问题
- Web Service的几个很重要的概念
- Web Service的几个很重要的概念
- Web Service的几个很重要的概念
- 贝塞尔曲线--属性动画
- Nginx学习篇一:将访问路径中的端口号去掉
- 洞穴 Cave
- 二叉树递归
- android如何判断当前网络类型(联网,2g,3g,wifi等)
- (做项目中遇到的基础的但是很重要的概念)
- Linux shell脚本——if运算例子
- 将连接MySQL数据库的java项目程序打包成为.jar格式
- PendingInten
- 从类变量成员初始化顺序,理解java语法[1]
- three.js报错renderer.setClearColorHex is not a function
- MQTT协议实现Android消息推送
- Unity与Android交互
- Android使用Jenkins完成自动化打包操作---Jenkins的安装以及基础配置