91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

靜態變量與靜態方法怎么在Kotlin中使用

發布時間:2021-03-25 17:23:56 來源:億速云 閱讀:166 作者:Leah 欄目:移動開發

這期內容當中小編將會給大家帶來有關靜態變量與靜態方法怎么在Kotlin中使用,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

class Constant {
 companion object {
  // 接口根地址
  const val BASE_URL = "http://xxxx.xxx.xxx/"
  // 友盟
  const val UMENG_APP_KEY = "xxxxxxxxxx"
  const val UMENG_CHANNEL = "umeng"
  // 微博
  const val WEIBO_APP_KEY = "xxxxxxxx"
  const val WEIBO_SECRET = "xxxxxxxxxx"
  
  
  fun getVideoFactor(){
   // do some work
  }
 }

}

看后是不是很簡單?在純kotlin代碼中可以直接這樣使用:

//初始化各平臺的APIKey
  PlatformConfig.setWeixin(Constant.WECHAT_APP_ID, Constant.WECHAT_APP_SECRET)
  PlatformConfig.setSinaWeibo(Constant.WEIBO_APP_KEY, Constant.WEIBO_SECRET, Constant.WEIBO_AUTH_RETURN_URL)

然而,如果我們使用的是Java和kotlin混合開發,在Java代碼中就無法通過 Constant.靜態變量 的方式來使用靜態變量或者方法來,而是通過如下方式:

//初始化各平臺的APIKey
  PlatformConfig.setWeixin(Constant.Companion.WECHAT_APP_ID, Constant.WECHAT_APP_SECRET)
  PlatformConfig.setSinaWeibo(Constant.Companion.WEIBO_APP_KEY, Constant.WEIBO_SECRET, Constant.WEIBO_AUTH_RETURN_URL)

如果我們想像kotlin那樣直接通過 類名.靜態變量 方式使用呢?我們可以借助于注解 @JvmField 和 @JvmStatic 來分別標注靜態變量和靜態方法,之后我就能在Java代碼中像以前方式那樣直接使用靜態的成員啦!

例如這樣:

/**
 * @author moosphon on 2018/12/12
 * desc: 異常的統一處理者
 */
class ExceptionHandler {


 companion object {
  @JvmField
  var errorCode = NetRequestStatus.UNKNOWN_ERROR

  @JvmField
  var errorMessage = "請求失敗,請稍后重試"

  @JvmStatic
  fun handleException(e : Throwable): String{
   e.printStackTrace()
   when(e){
    is SocketException -> {
     Logger.e("ExceptionHandler", "網絡連接異常: " + e.message)
     errorCode = NetRequestStatus.NETWORK_ERROR
     errorMessage = "網絡連接異常"
    }

    is JsonParseException -> {
     Logger.e("ExceptionHandler", "數據解析異常: " + e.message)
     errorCode = NetRequestStatus.PARSE_ERROR
     errorMessage = "數據解析異常"
    }

    else -> {
     try {
      Logger.e("ExceptionHandler", "其他錯誤: " + e.message)
     } catch (e1: Exception) {
      Logger.e("ExceptionHandler", "未知錯誤: " + e.message)
     }

     errorCode = NetRequestStatus.UNKNOWN_ERROR
     errorMessage = "未知錯誤,一起禱告快點好起來吧~"
    }
   }
   return errorMessage
  }
 }
}

上述就是小編為大家分享的靜態變量與靜態方法怎么在Kotlin中使用了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

政和县| 许昌县| 淮阳县| 闸北区| 临潭县| 中宁县| 贵定县| 上犹县| 金昌市| 阳曲县| 绵竹市| 太仆寺旗| 囊谦县| 太仓市| 丹寨县| 桦川县| 郁南县| 哈密市| 五峰| 逊克县| 勃利县| 朝阳县| 莒南县| 濮阳市| 徐汇区| 海兴县| 泾源县| 宜良县| 青岛市| 呼和浩特市| 曲水县| 滕州市| 昌平区| 贵港市| 河北区| 道孚县| 太湖县| 丽江市| 阿尔山市| 吉首市| 靖远县|