2017-12-29 利用反射獲取類(lèi)中私有字段、try catch機(jī)制比规、Vue.js 樣式綁定若厚、radio的css源碼、《釜山行》細(xì)思極恐細(xì)節(jié)

第一組:劉聰 利用反射獲取類(lèi)中私有字段

類(lèi)中的私有和保護(hù)類(lèi)型在外部是不能直接獲取到其值的蜒什,然而通過(guò)反射得到Type類(lèi)的GetFields方法可以得到私有字段测秸。

一些概念:
元數(shù)據(jù):有關(guān)程序及其類(lèi)型的數(shù)據(jù)。
反射:一個(gè)運(yùn)行的程序查看本身或者其他程序的元數(shù)據(jù)的行為叫做反射灾常。
使用反射命名空間:System.Reflection
Tpye類(lèi):包含類(lèi)型信息的抽象類(lèi)
Typeof():用于獲取類(lèi)型的 System.Type 對(duì)象

示例:

  1. 自定義類(lèi)RefClass:


RefClass類(lèi)中定義了私有字段Priv_Test1 = 3霎冯;一般而言從外部無(wú)法獲取它的值的


image.png
  1. 獲取RefClass類(lèi)的類(lèi)型,通過(guò)GetFields獲得字段并輸出到控制臺(tái)


結(jié)果:


可以看得我們已經(jīng)可以讀取Priv_Test1值了钞瀑。當(dāng)然我們也可以修改它的值沈撞。

通過(guò)SetValue()修改私有字段值:

控制臺(tái)輸出:


第二組:葉佳意 try catch機(jī)制

在制作計(jì)算器的時(shí)候遇到了一個(gè)問(wèn)題:小數(shù)的四則運(yùn)算精確度不夠。這是因?yàn)橛?jì)算機(jī)只能讀懂二進(jìn)制雕什,因此在計(jì)算的時(shí)候需要將十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制缠俺,轉(zhuǎn)換的過(guò)程中就會(huì)造成誤差显晶。解決方法是把需要計(jì)算的數(shù)字乘以 10 的 n 次冪,換算成計(jì)算機(jī)能夠精確識(shí)別的整數(shù)晋修,然后再除以 10 的 n 次冪吧碾,大部分編程語(yǔ)言都是這樣處理精度差異的,我們就借用過(guò)來(lái)處理一下這里存在的誤差墓卦。

在寫(xiě)代碼的時(shí)候用到了try catch機(jī)制倦春。這個(gè)機(jī)制用于捕獲異常。

try {
有可能出現(xiàn)錯(cuò)誤的代碼寫(xiě)在這里
}catch(e){
出錯(cuò)后的處理
}

如果try中的代碼沒(méi)有出錯(cuò)落剪,則程序正常運(yùn)行try中的內(nèi)容后睁本,不會(huì)執(zhí)行catch中的內(nèi)容,如果try中的代碼一但出錯(cuò)忠怖,程序立即跳入catch中去執(zhí)行代碼呢堰,那么try中出錯(cuò)代碼后的所有代碼就不再執(zhí)行了。

以下是進(jìn)行小數(shù)加法時(shí)進(jìn)行的處理:

var r1, baseNum1, baseNumshow1;
try {
    baseNum1 = num.toString().split(".")[1].length
} catch(e) {
    baseNum1 = 0
};
try {
    baseNumshow1 = numshow.toString().split(".")[1].length
} catch(e) {
    baseNumshow1 = 0
};
r1 = Math.pow(10, Math.max(baseNum1, baseNumshow1));
result = (num * r1 + numshow * r1) / r1;
numshow = String(result);

第三組:黃華英 Vue.js 樣式綁定

操作元素的 class 列表和內(nèi)聯(lián)樣式是數(shù)據(jù)綁定的一個(gè)常見(jiàn)需求凡泣。因?yàn)樗鼈兌际菍傩酝魈郏晕覀兛梢杂胿-bind處理它們:只需要通過(guò)表達(dá)式計(jì)算出字符串結(jié)果即可。不過(guò)鞋拟,字符串拼接麻煩且易錯(cuò)骂维。因此,在將v-bind用于class和style時(shí)贺纲,Vue.js 做了專(zhuān)門(mén)的增強(qiáng)航闺。表達(dá)式結(jié)果的類(lèi)型除了字符串之外,還可以是對(duì)象或數(shù)組猴誊。

一潦刃、 v-bind:class—對(duì)象語(yǔ)法

(1)根據(jù)數(shù)據(jù)屬性確定class

<div class="static"
v-bind:class="{ active: isActive, 'text-danger': hasError }">
</div>
對(duì)應(yīng)數(shù)據(jù)初始設(shè)置
data: {
  isActive: true,  hasError: true
}

active這個(gè) class 存在與否將取決于數(shù)據(jù)屬性isActive(true or false)。
你可以在對(duì)象中傳入更多屬性來(lái)動(dòng)態(tài)切換多個(gè) class懈叹。

以上渲染結(jié)果為:<div class="static active text-danger "></div>

(2)根據(jù)數(shù)據(jù)對(duì)象確定class:

<div v-bind:class="classObject"></div>//綁定數(shù)據(jù)對(duì)象
data: {
  classObject: //初始數(shù)據(jù)對(duì)象
{
    active: true,
    'text-danger': false  
}
}

渲染結(jié)果:<div class="active"></div>

(3)根據(jù)計(jì)算屬性返回的對(duì)象確定class

<div v-bind:class="classObject"></div>//綁定計(jì)算屬性
data: {  isActive: true,  error: null},
computed: {
  classObject: function () {  
  return {    
  active: this.isActive && !this.error,   //true
 'text-danger': this.error && this.error.type === 'fatal'  //false
  } 
}}

渲染結(jié)果:<div class="active"></div>

二乖杠、 v-bind:class—數(shù)組語(yǔ)法

把一個(gè)數(shù)組傳給v-bind:class,以應(yīng)用一個(gè) class 列表

<div v-bind:class="[ classA, classB]"></div>//數(shù)組元素
data: {
  classA: 'class-a',
classB: 'class-b'
}

渲染結(jié)果<div class="class-a class-b"></div>

三元表達(dá)式切換class:

<div v-bind:class="[ isClassA ? activeA: '', activeB]"> 

activeB 始終存在项阴,activeA是否存在取決于isClassA

在數(shù)組語(yǔ)法中也可以使用對(duì)象語(yǔ)法滑黔,上面這個(gè)三元表達(dá)式用對(duì)象語(yǔ)法實(shí)現(xiàn):

<div v-bind:class=”[{active:isClassA},activeB]”></div>
三、 v-bind:style

通過(guò)給元素賦值確定樣式

<div v-bind:style="{ color: activeColor, fontSize: fontSize + 'px' }"></div>

直接綁定到一個(gè)樣式對(duì)象

<div v-bind:style="styleObject"></div>

直接綁定樣式數(shù)組

<div v-bind:style="[baseStyles, overridingStyles]"></div>

第四組:王芳 radio的css源碼

12.27分享了如何修改checkbox的默認(rèn)樣式
現(xiàn)在補(bǔ)充一段radio的css源碼(HTML結(jié)構(gòu)和checkbox是一樣的):

.radioLabel{position: relative;}
.radioInput{display: none;}
.radioSpan{display: inline-block;width: 1em;height: 1em;border:1px solid red;border-radius: 50%;}
.radioInput:checked+.radioSpan:after{
    content: "";
    position: absolute;
    top: 47%;
    left: 29%;
    width: .4em;
    height: .4em;
    border-radius: 50%;
    background-color: red;
}

補(bǔ)充二者的效果圖:
checkbox:


image.png

radio:


image.png

第五組:姜葳 《釜山行》細(xì)思極恐細(xì)節(jié)

(1)




有一對(duì)兒高中生环揽,在逃亡的時(shí)候略荡,女孩一直拉著男孩并問(wèn)怎么辦?男孩即使是慌也很鎮(zhèn)定歉胶。當(dāng)女孩被感染時(shí)他就蒙了汛兜,他突然不知道該做什么,他開(kāi)始喊通今,怎么辦粥谬。變得慌張肛根,不知所措。雖然他知道女孩可能會(huì)讓他變異漏策,卻還是抱著她哭派哲。

(2)釜山是安全區(qū),但男主在車(chē)上多次給女兒的媽媽打電話掺喻,卻一直未接通芭届。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市感耙,隨后出現(xiàn)的幾起案子褂乍,更是在濱河造成了極大的恐慌,老刑警劉巖即硼,帶你破解...
    沈念sama閱讀 219,039評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件逃片,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡只酥,警方通過(guò)查閱死者的電腦和手機(jī)褥实,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,426評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)裂允,“玉大人性锭,你說(shuō)我怎么就攤上這事〗信郑” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,417評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵她奥,是天一觀的道長(zhǎng)瓮增。 經(jīng)常有香客問(wèn)我,道長(zhǎng)哩俭,這世上最難降的妖魔是什么绷跑? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,868評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮凡资,結(jié)果婚禮上砸捏,老公的妹妹穿的比我還像新娘。我一直安慰自己隙赁,他們只是感情好垦藏,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,892評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著伞访,像睡著了一般掂骏。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上厚掷,一...
    開(kāi)封第一講書(shū)人閱讀 51,692評(píng)論 1 305
  • 那天弟灼,我揣著相機(jī)與錄音级解,去河邊找鬼。 笑死田绑,一個(gè)胖子當(dāng)著我的面吹牛勤哗,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播掩驱,決...
    沈念sama閱讀 40,416評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼芒划,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了昙篙?” 一聲冷哼從身側(cè)響起腊状,我...
    開(kāi)封第一講書(shū)人閱讀 39,326評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎苔可,沒(méi)想到半個(gè)月后缴挖,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,782評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡焚辅,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,957評(píng)論 3 337
  • 正文 我和宋清朗相戀三年映屋,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片同蜻。...
    茶點(diǎn)故事閱讀 40,102評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡棚点,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出湾蔓,到底是詐尸還是另有隱情瘫析,我是刑警寧澤,帶...
    沈念sama閱讀 35,790評(píng)論 5 346
  • 正文 年R本政府宣布默责,位于F島的核電站贬循,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏桃序。R本人自食惡果不足惜杖虾,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,442評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望媒熊。 院中可真熱鬧奇适,春花似錦、人聲如沸芦鳍。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,996評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)柠衅。三九已至间影,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背魂贬。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,113評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工巩割, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人付燥。 一個(gè)月前我還...
    沈念sama閱讀 48,332評(píng)論 3 373
  • 正文 我出身青樓宣谈,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親键科。 傳聞我的和親對(duì)象是個(gè)殘疾皇子闻丑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,044評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)勋颖,斷路器嗦嗡,智...
    卡卡羅2017閱讀 134,661評(píng)論 18 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類(lèi)相關(guān)的語(yǔ)法饭玲,內(nèi)部類(lèi)的語(yǔ)法侥祭,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法茄厘,線程的語(yǔ)...
    子非魚(yú)_t_閱讀 31,639評(píng)論 18 399
  • //Clojure入門(mén)教程: Clojure – Functional Programming for the J...
    葡萄喃喃囈語(yǔ)閱讀 3,671評(píng)論 0 7
  • 推理是好東西次哈,今天我就用推理來(lái)懟一句廣為流傳的話——“實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)”胎署。這句話在某些語(yǔ)境下是“實(shí)干勝于空...
    有光N道閱讀 527評(píng)論 2 2
  • 知曉-徐子泓 已失去家園 需要某人相伴 失落的我 無(wú)人知曉 星星掛於天上 無(wú)人知曉 是哪一顆靈魂 劃破夜空 消失的...
    塔沙閱讀 194評(píng)論 0 0