×

Falcon

  • FalconChen
    2018-09-03 01:20
    "要让这个行为可行,需要两个理由。第一,公开或者未公开的标识符,不是一个值。第二,短变量声明操作符,有能力捕获引用的类型,并创建一个未公开的类型的变量。永远不能显式创建一个未公开的类型的变量,不过短变量声明操作符可以这么做。"#viaKindle#
  • FalconChen
    2018-09-03 01:12
    "当一个标识符的名字以小写字母开头时,这个标识符就是未公开的,即包外的代码不可见。如果一个标识符以大写字母开头,这个标识符就是公开的,即被包外的代码可见。"#viaKindle#
  • FalconChen
    2018-09-03 00:50
    "这表明,如果外部类型实现了notify方法,内部类型的实现就不会被提升。不过内部类型的值一直存在,因此还可以通过直接访问内部类型的值,来调用没有被提升的内部类型实现的方法。"#viaKindle#
  • FalconChen
    2018-09-03 00:35
    "由于内部类型的提升,内部类型实现的接口会自动提升到外部类型。这意味着由于内部类型的实现,外部类型也同样实现了这个接口。"#viaKindle#
  • FalconChen
    2018-09-03 00:25
    "通过嵌入类型,与内部类型相关的标识符会提升到外部类型上。这些被提升的标识符就像直接声明在外部类型里的标识符一样,也是外部类型的一部分。这样外部类型就组合了内部类型包含的所有属性,并且可以添加新的字段和方法。外部类型也可以通过声明与内部类型标识符同名的标识符来覆盖内部标识符的字段或者方法。这就是扩展或者修改已有类型的方法。"#viaKindle#
  • FalconChen
    2018-09-02 23:59
    #三省吾身# 今天读书了吗,今天健身了吗,今天过得开心吗?——2018.09.02
  • FalconChen
    2018-09-02 22:39
    我看到你了
  • FalconChen
    2018-09-02 20:32
    "这个规则说,如果使用指针接收者来实现一个接口,那么只有指向那个类型的指针才能够实现对应的接口。如果使用值接收者来实现一个接口,那么那个类型的值和指针都能够实现对应的接口。"#viaKindle#
  • FalconChen
    2018-09-02 19:29
    "对接口值方法的调用会执行接口值里存储的用户定义的类型的值对应的方法。因为任何用户定义的类型都可以实现任何接口,所以对接口值方法的调用自然就是一种多态。在这个关系里,用户定义的类型通常叫作实体类型,原因是如果离开内部存储的用户定义的类型的值的实现,接口值并没有具体的行为。"#viaKindle#
  • FalconChen
    2018-09-02 13:56
    "多态是指代码可以根据类型的具体实现采取不同行为的能力。如果一个类型实现了某个接口,所有使用这个接口的地方,都可以支持这种类型的值。"#viaKindle#