收藏此站 联系我们 网站
当前位置:首页» 网站推广 » 【建站服务】安宁网站优化-域名申请

【建站服务】安宁网站优化-域名申请

作者: 风兰 . 阅读量: 3 . 发表时间:2022-09-20 22:31:16

网站建设

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


安宁网站优化

网站建设.png

安宁区,甘肃省兰州市辖区,位于甘肃省中部,兰州市西郊,黄河北岸;地处黄河兰州段河谷,地势北高南低,大陆性气候显著,四季分明;总面积82.33平方公里,辖8个街道。 [23]  根据第七次人口普查数据,截至2020年11月1日零时,安宁区常住人口为439566人。 [21] 
安宁区名源自明代军事城堡安宁堡,取“安宁无患、不受侵害”之意,是古丝绸之路的必经地之一;区内森林覆盖率达43.4%,人均公共绿地面积达到12.2平方米,获“全国绿化模范县区”称号 [1]  ;黄河旅游风情线西段纵贯安宁区全境,区域内有天斧沙宫、仁寿山、银滩湿地公园、兰州植物园、安宁生态文化园、九洲台、文溯阁《四库全书》藏书馆、兰州国学馆等自然景观和人文景观。 [2] 
2020年,安宁区全年完成地区生产总值237.99亿元,同比增长5.8%。 [22] 
2021年度《甘肃蓝皮书》发布,获甘肃“最具产业发展竞争力”单项竞争力排名第一的县。
宁区历史悠久,从出土文物彩陶及骨珠等推断,早在公元前400年前,就有先民在这里繁衍生息。
夏、商、周为羌戎所居。
春秋战国时期,秦国兴起,秦昭襄王于昭王二十八年(前279年)始置陇西郡、郡治狄道(今临洮县),“筑长城以御胡”(匈奴人)。区境在秦长城之外,为南下匈奴人占据,不在秦版图内。
秦始皇二十六年(前221年),秦始皇统一六国,分天下为三十六郡,金城县为陇西郡辖县治在今西固区,其西部疆域以河为界,区境直到西汉初期仍为匈奴人所据。
汉武帝元狩二年(前121年),霍去病大败匈奴,掩有整个河西,区境始为汉有,属金城县管辖。武帝元鼎三年(前114年),从陇西郡分置天水郡,金城县改属天水郡。至汉昭帝始元六年(前81年),以“边塞阔远”、“羌番为敌”,取天水、陇西、张掖三郡各二县置金城郡,从天水郡取两县即金城、榆中。区境地遂属金城郡(郡治允吾)之金城县。
东汉因之。
三国时,金城郡属魏凉州领辖。魏文帝曹丕黄初元年(220年),分河西为凉州,陇右为秦州,将金城郡治由允吾迁榆中,区境仍为金城县辖地。
西晋末,前凉张寔于永安元年,晋愍帝兴建二年(314年),将金城县治移至今兰州市区,区境仍为金城管辖。

这个问题对 Java 开发者来说十分难以理解,网上有很多人讨论这个问题,但大多数都是互相抄,说不出个所以然来,要说还是老外对这个问题的理解比较透彻,可以参考这个帖子:https://stackoverflow.com/questions/43220140/whats-kotlin-backing-field-for/43220314

其中最关键的一句:Remember in kotlin whenever you write foo.bar = value it will be translated into a setter call instead of a PUTFIELD.

也就是说,在 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)创建对象的区别

var demo = Outter.Nested()// 嵌套类,Outter后边没有括号var demo = Outter().Inner();// 内部类,Outter后边有括号

也就是说,要想构造内部类的对象,必须先构造外部类的对象,而嵌套类则不需要;

(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@ 外部类名 的形式引用外部类的成员变量,不需要创建外部类对象;


安宁网站优化


上往建站提供搭建网站域名注册官网备案服务网店详情页设计企业网店专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管网页美工排版,致力于域名申请竞价托管软文推广全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机网站推广百度竞价托管网站建设上网建站推广服务网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站

全国服务热线
18114747181
二维码
手机端二维码
上往建站
地址:全国各地都有驻点商务 |  网站建设上往建站
在线咨询QQ:1120768800
 
QQ在线咨询
售前咨询热线
18114747181
营销顾问
营销顾问
售后服务热线
400-000-1116
售后服务
售后服务