第一組:劉聰 利用反射獲取類(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ì)象
示例:
-
自定義類(lèi)RefClass:
RefClass類(lèi)中定義了私有字段Priv_Test1 = 3霎冯;一般而言從外部無(wú)法獲取它的值的
-
獲取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:
radio:
第五組:姜葳 《釜山行》細(xì)思極恐細(xì)節(jié)
(1)
有一對(duì)兒高中生环揽,在逃亡的時(shí)候略荡,女孩一直拉著男孩并問(wèn)怎么辦?男孩即使是慌也很鎮(zhèn)定歉胶。當(dāng)女孩被感染時(shí)他就蒙了汛兜,他突然不知道該做什么,他開(kāi)始喊通今,怎么辦粥谬。變得慌張肛根,不知所措。雖然他知道女孩可能會(huì)讓他變異漏策,卻還是抱著她哭派哲。
(2)釜山是安全區(qū),但男主在車(chē)上多次給女兒的媽媽打電話掺喻,卻一直未接通芭届。