在领劵联盟项目中,师傅用java写了如下代码:
public class TbNestedScrollViewJ extends NestedScrollView {
public TbNestedScrollViewJ(@NonNull Context context){
super(context);
}
public TbNestedScrollViewJ(@NonNull Context context, @Nullable AttributeSet attrs){
super(context,attrs);
}
public TbNestedScrollView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr){
super(context,attrs,defStyleAttr);
}
}
然后我使用的是kotlin语言,这里我也不太清楚怎么用Kotlin语言来这样的构造函数。我就使用了idea中的转化工具下面的代码: kotlin中关于构造函数用的比较少,很容易蒙。这里简单的记录一下。
class TbNestedScrollView : NestedScrollView {
constructor(context: Context) : super(context) {}
constructor(context: Context, attrs: AttributeSet?) : super(context, attrs) {}
constructor(
context: Context, attrs: AttributeSet?,
defStyleAttr: Int
) : super(context, attrs, defStyleAttr) {
}
}
但是还有一种写关于,需要让这些构造函数有统一入口
class TbNestedScrollView(context: Context, attrs: AttributeSet?, defStyleAttr: Int) :
NestedScrollView(context, attrs, defStyleAttr) {
constructor(context: Context, attrs: AttributeSet) : this(context, attrs, 0) {
}
constructor(context: Context) : this(context, null, 0) {
}
}
上面的两种是我对kotlin语言使用构造函数的记录。
有什么错误的地方,还请各位指出、