Kotlin教程 简单的类调用

本章节讲述Kotlin简单的类调用

1.描述

实现一个最简单的功能:一个Activity中调用一个类中的方法。

这个是一个非常简单的功能。我们需要新建一个类。在该类中把要用到的方法封装好,然后在Activity中new一个该类的实例,通过该类的实例调用该类中的方法。

2.Java代码

Activity

public class KotlinActivity2 extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_kotlin2);

        new GaoJieFun().getString(0, new GaoJieFun.MyApi() {
            @Override
            public void onSuccess() {
                Log.d("KotlinActivity", "onSuccess方法执行...");
            }

            @Override
            public void onFailed() {
                Log.d("KotlinActivity", "onFailed方法执行...");
            }
        });
    }
}

public class GaoJieFun {

    public void getString(int result, MyApi myApi) {
        if (null == myApi) return;
        if (result == 0) {
            myApi.onSuccess();
        } else {
            myApi.onFailed();
        }
    }

    public interface MyApi {
        void onSuccess();

        void onFailed();
    }
}

3.Kotlin代码

Activity

class KotlinActivity2 : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_kotlin2)

        GaoJieFun().getString(0, object : MyApi {
            override fun onSuccess() {
                Log.d("KotlinActivity", "onSuccess方法执行...")
            }

            override fun onFailed() {
                Log.d("KotlinActivity", "onFailed方法执行...")
            }
        })
    }
}

class GaoJieFun {
    
    fun getString(result: Int, myApi: MyApi?) {
        if (null == myApi) return
        if (result == 0) {
            myApi.onSuccess()
        } else {
            myApi.onFailed()
        }
    }


    interface MyApi {
        fun onSuccess()
        fun onFailed()
    }
}

对比变化

1.调用类中方法或者属性时不同

Java中,调用一个类中的方法。需要两步操作(方法不是静态的,类也不是单例,就是普通的类中的方法)

(1) 创建该类的对象,即new一个对象。

(2) 使用刚刚创建的类对象调用类中的方法。

比如

new GaoJieFun().getString(参数1,参数2);

Kotlin中,我们不需要使用new关键字创建类对象,即相比Java而言把new关键字去掉

比如

GaoJieFun().getString(参数1,参数2)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值