上往建站提供服务器空间服务商,百度快照排名,网站托管,百度推广运营,致力于设计外包服务与源代码定制开发,360推广,搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。
文山网页制作

咸淳十年(1274年),文天祥被委知赣州(今江西赣州)。
[11] 期间“谏诤有风烈,治郡持节,廉明有威”。
[82] 德祐元年(1275年),长江上游告急,宋廷诏令天下兵马勤王。文天祥捧着诏书流涕哭泣,派陈继周率郡里的志士,同时联络溪峒蛮;派方兴召集吉州(今江西省吉安市)的士兵,各英雄豪杰群起响应,聚集兵众万人。宋廷得知此事,命文天祥以江南西路提刑安抚使的身份率军包围京师临安府。他的朋友制止他说:“现在元兵分三路南下进攻,攻破京畿,进迫内地,你以乌合之众万余人赴京入卫,这与驱赶群羊同猛虎相斗没有什么差别。”文天祥答道:“我也知道是这么回事。但国家养育臣民三百多年,一旦有危急,征集天下的兵丁,没有一人一骑入卫,我为此深感遗憾。所以不自量力,而以身殉国,希望天下忠臣义士将会有听说此事后而奋起的。依靠仁义取胜就可以自立,依靠人多就可以促成事业成功,如果按此而行,那么国家就有保障了。”
[12] 文天祥性格豁达豪爽,平生衣食丰厚,声伎满堂。到这时,痛心地贬损自己,把家里的资产全部作为军费。每当与宾客、僚属谈到国家时事,他就痛哭流涕,抚案说道:“以别人的快乐为快乐的人,也忧虑别人忧虑的事情,以别人的衣食为衣食来源的人,应为别人的事而至死不辞。”
德祐元年(1275年)八月,文天祥率兵到临安(今浙江杭州),担任平江府知府。当时因为丞相陈宜中没有返回朝廷,所以没有受到派遣。十月,陈宜中至,于是派遣去任职。朝议中刚刚擢升吕师孟为兵部尚书,封吕文德为和义郡王,想以此寻求和好。吕师孟更加傲慢骄横、放肆。
[13] 文天祥辞别宋恭帝,之后上书说:“朝廷之内,具有姑息、求和意向的大臣很多,具有奋发之志、果断处事的人却很少。我请求处斩吕师孟作为战事祭祀,用以鼓舞将士们的士气。”又说:“我大宋吸取五代分裂割据的教训,削除藩镇,建立郡县城邑,虽然一时完全革除了尾大不掉的弊端,但国家因此渐趋削弱。所以敌军到一州就破一州,到一县就破一县,中原沦陷,悔恨、痛心哪里还来得及。”随后,他建议将天下为四镇,设置都督作为统帅,具体部署有:
广南西路并入荆湖南路,建治于长沙;
广南东路并入江南西路,建治于隆兴(今江西南昌);
福建路并入江南东路,建治于番阳(今江西鄱阳县);
淮南西路并入淮南东路,建治于扬州。
同时,他建议责令长沙兼领鄂州等处,隆兴兼领蕲州、黄州,番阳兼领江东,扬州兼领两淮,使他们辖区范围更广、力量更强,足以抵抗元军。之后各地约定日期,一齐奋起,使元军四散,疲于奔命,再伺机而动,便能击退元军。但当时朝议认为文天祥的议论过于疏阔,难以实行,故而未予采纳。
[14] 德祐元年(1275年)十月,文天祥抵达平江,元军已从金陵出发进入常州。文天祥派遣他的将帅朱华、尹玉、麻士龙与张全援助常州,行到虞桥,麻士龙战死,朱华率领广南军队,战于五牧,被打败,尹玉也被打败了,争相渡水,扒张全军中的渡船,张全的士兵斩断他们的手指,都淹死了,尹玉率领残兵五百人夜间发起战斗,到第二天早晨都战死了。张全不发一箭,逃跑退却了。元军攻入常州,占领了独松关。陈宜中、留梦炎召令文天祥,弃守平江,退守余杭。 [
文山网页制作
上往建站提供搭建网站,域名注册,官网备案服务,网店详情页设计,企业网店,专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管,网页美工排版,致力于域名申请,竞价托管,软文推广,全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机,网站推广,百度竞价托管,网站建设,上网建站推广服务,网络公司有哪些等业务,专业团队服务,效果好。
服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)
也就是说,在 Kotlin 中,任何时候当你写出“一个变量后边加等于号”这种形式的时候,比如我们定义 var no: Int 变量,当你写出 no = ... 这种形式的时候,这个等于号都会被编译器翻译成调用 setter 方法;而同样,在任何位置引用变量时,只要出现 no 变量的地方都会被编译器翻译成 getter 方法。那么问题就来了,当你在 setter 方法内部写出 no = ... 时,相当于在 setter 方法中调用 setter 方法,形成递归,进而形成死循环,例如文中的例子:
var no: Int = 100 get() = field // 后端变量 set(value) { if (value < 10) { // 如果传入的值小于 10 返回该值 field = value } else { field = -1 // 如果传入的值大于等于 10 返回 -1 } }这段代码按以上这种写法是正确的,因为使用了 field 关键字,但是如果不用 field 关键字会怎么样呢?例如:
var no: Int = 100 get() = no set(value) { if (value < 10) { // 如果传入的值小于 10 返回该值 no = value } else { no = -1 // 如果传入的值大于等于 10 返回 -1 } }注意这里我们使用的 Java 的思维写了 getter 和 setter 方法,那么这时,如果将这段代码翻译成 Java 代码会是怎么样呢?如下:
int no = 100;public int getNo() { return getNo();// Kotlin中的get() = no语句中出来了变量no,直接被编译器理解成“调用getter方法”}public void setNo(int value) { if (value < 10) { setNo(value);// Kotlin中出现“no =”这样的字样,直接被编译器理解成“这里要调用setter方法” } else { setNo(-1);// 在setter方法中调用setter方法,这是不正确的 }}翻译成 Java 代码之后就很直观了,在 getter 方法和 setter 方法中都形成了递归调用,显然是不正确的,最终程序会出现内存溢出而异常终止。
2、嵌套类和内部类在使用时的区别
(1)创建对象的区别
也就是说,要想构造内部类的对象,必须先构造外部类的对象,而嵌套类则不需要;
(2)引用外部类的成员变量的方式不同
先来看嵌套类:
class Outer { // 外部类 private val bar: Int = 1 class Nested { // 嵌套类 var ot: Outer = Outer() println(ot.bar) // 嵌套类可以引用外部类私有变量,但要先创建外部类的实例,不能直接引用 fun foo() = 2 }}再来看一下内部类(引用文章中代码):
class Outer { private val bar: Int = 1 var v = "成员属性" /**嵌套内部类**/ inner class Inner { fun foo() = bar // 访问外部类成员 fun innerTest() { var o = this@Outer //获取外部类的成员变量 println("内部类可以引用外部类的成员,例如:" + o.v) } }}可以看来内部类可以直接通过 this@ 外部类名 的形式引用外部类的成员变量,不需要创建外部类对象;
3、匿名内部类的实现
引用文章中的代码
fun main(args: Array<String>) { var test = Test() /** * 采用对象表达式来创建接口对象,即匿名内部类的实例。 */ test.setInterFace(object : TestInterFace { override fun test() { println("对象表达式创建匿名内部类的实例") } })}特别注意这里的 object : TestInterFace,这个 object 是 Kotlin 的关键字,要实现匿名内部类,就必须使用 object 关键字,不能随意替换其它单词,切记切记。
applixy
org***126.com
参考地址
Cyandnow
c@c***dnow.com
关于 field 我也分享一下理解。