主頁 > 知識庫 > throw的一些用法

throw的一些用法

熱門標(biāo)簽:南陽外呼系統(tǒng)定制化 電話機器人軟件銷售工作 合肥電銷外呼系統(tǒng)哪家公司做的好 同安公安400電話怎么申請流程 申請400電話手續(xù) 蘋果手機凱立德地圖標(biāo)注 玉林市機器人外呼系統(tǒng)哪家好 百度ai地圖標(biāo)注 預(yù)測式外呼系統(tǒng)使用說明

無論是.net還是java,在開發(fā)程序時都難免會用到throw關(guān)鍵字,對于初學(xué)者一般會認(rèn)為它與try...catch捆綁在一起,這當(dāng)然是錯誤的,事實上,throw的一個最重要的作用就是:

讓程序告訴用戶一些事情,這些事情一般是開發(fā)人員之前定義好的,如對于一個輸入文本框,你需要輸入給定數(shù)字,但如果輸入的不是給定的數(shù)據(jù)范圍,則可以通過throw告訴用戶!

讓程序告訴開發(fā)人員一些事情,這些事情一般是底層開發(fā)人員之前定義好的,如果一些業(yè)務(wù)規(guī)范,如果開發(fā)人員輸入的不合法,程序就會拋出一個異常,以告訴表層開發(fā)人員!

下面是一個程序中的throw用法:

復(fù)制代碼 代碼如下:

if (vp.ContainsKey("flag"))
            {
                int flagValue;
                int.TryParse(vp["flag"].ToString(), out flagValue);
                switch (flagValue)
                {
                    case 0:
                        linq = linq.Where(i => i.EndTime > DateTime.Now);
                        break;
                    case 1:
                        linq = linq.Where(i => i.EndTime = DateTime.Now);
                        break;
                    case 2:
                       //...break;
                    default:
                        throw new ArgumentException("參數(shù)不正確");
                }
            }

上面的代碼,由前臺用戶傳入一個參數(shù),這邊于程序處理,這里不考慮擴展,所以使用了switch塊(對于業(yè)務(wù)多變的情況下,我們可以使用策略模式,工廠模式去代替switch這個代碼壞味道),當(dāng)你輸入的參數(shù)不到給定的case條件時,就會向上拋出異常,以告訴用戶!當(dāng)然默認(rèn)情況下會以黃屏的樣子出現(xiàn),我們運營的系統(tǒng),當(dāng)然會做一些處理。

.net mvc為我們提供的實例項目,是這樣使用throw關(guān)鍵字的,看代碼:

復(fù)制代碼 代碼如下:

public bool ValidateUser(string userName, string password)
        {
            if (String.IsNullOrEmpty(userName)) throw new ArgumentException("值不能為 null 或為空。", "userName");
            if (String.IsNullOrEmpty(password)) throw new ArgumentException("值不能為 null 或為空。", "password");

            return _provider.ValidateUser(userName, password);
        }


好了,對于throw的解說就到這里,今天做項目正好用到這個,所以就總結(jié)了一下,希望給你會帶來一點點幫助,呵呵。

標(biāo)簽:南昌 南京 臺州 淄博 揚州 南京 嘉興 海南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《throw的一些用法》,本文關(guān)鍵詞  throw,的,一些,用法,throw,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《throw的一些用法》相關(guān)的同類信息!
  • 本頁收集關(guān)于throw的一些用法的相關(guān)信息資訊供網(wǎng)民參考!
  • 企业400电话

    智能AI客服机器人
    15000

    在线订购

    合计11份范本:公司章程+合伙协议+出资协议+合作协议+股权转让协议+增资扩股协议+股权激励+股东会决议+董事会决议

    推薦文章