上一页 1 ··· 7 8 9 10 11 12 13 14 15 16 下一页
摘要: 前面介绍嵌套类的时候讲到了关键字static,用static修饰类,该类就变成了嵌套类。从嵌套类的用法可知,其它地方访问嵌套类之时,无需动态创建外层类的实例,直接创建嵌套类的实例就行。其实static不光修饰类,还能用来修饰方法、修饰属性等等,例如大家学习Java一开始就遇到的main方法,便为st 阅读全文
posted @ 2019-01-31 21:52 pinlantu 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 通常情况下,一个Java代码文件只定义一个类,即使两个类是父类与子类的关系,也要把它们拆成两个代码文件分别定义。可是有些事物相互之间密切联系,又不同于父子类的继承关系,比如一棵树会开很多花朵,这些花儿作为树木的一份子,它们依附于树木,却不是树木的后代。花朵不但拥有独特的形态,包括花瓣、花蕊、花萼等, 阅读全文
posted @ 2019-01-28 21:39 pinlantu 阅读(444) 评论(0) 推荐(1) 编辑
摘要: 前面介绍了多态的相关用法,可以看到一个子类从父类继承之后,便能假借父类的名义到处晃悠。这种机制在正常情况之下没啥问题,但有时为了预防意外发生,往往只接受当事人来处理,不希望它的儿子乃至孙子来瞎掺和。可是犹记得几种开放性修饰符,只能控制某个实体能否被外部访问,从未听说可决定某个类能否被其它类所继承。毫 阅读全文
posted @ 2019-01-26 10:17 pinlantu 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了类的多态性,来自于鸡类的实例chicken,既能用来表达公鸡实例,也能用来表达母鸡实例。可是这导致了一个问题,假如在call方法内部需要手工判断输入参数属于公鸡实例还是母鸡实例,那该如何是好?所谓“雄兔脚扑朔,雌兔眼迷离,双兔傍地走,安能辨我是雄雌”,固然编译器在运行之时能够自动判断这是哪 阅读全文
posted @ 2019-01-23 22:04 pinlantu 阅读(653) 评论(0) 推荐(1) 编辑
摘要: 江湖上传闻,面向对象之所以厉害,是因为它拥有封装、继承与多态三项神技,只要三板斧一出,号令天下谁敢不从。前面费了老大的劲才讲清楚封装和继承,那么多态又是怎样的神乎其神呢?下面先通过一个简单的例子来说明多态的使用场景。首先把鸡这种家禽通过面向对象来表达,方便起见只定义两个属性(名称和性别),以及一个c 阅读全文
posted @ 2019-01-21 10:37 pinlantu 阅读(649) 评论(0) 推荐(0) 编辑
摘要: 前面介绍子类继承父类的时候,提到了public(公共)和private(私有)两个修饰符,其中public表示它所修饰的实体是允许外部访问的;而private表示它所修饰的实体不允许外部访问,只能在当前类内部访问private成员,即便是子类也不能访问父类的私有成员。这种情况就令人产生了困惑,私人财 阅读全文
posted @ 2019-01-19 12:29 pinlantu 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了如何从Bird类继承而来Swallow类,按道理子类应当继承父类的所有要素,但是对于构造方法来说,Swallow类仅仅继承了Bird类的默认构造方法,并未自动继承带参数的构造方法。如果子类想继续使用父类的其它构造方法,就得自己重写心仪的构造方法。例如老鹰属于鸟类,那么可以编写继承自Bird 阅读全文
posted @ 2019-01-16 21:58 pinlantu 阅读(1039) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了类的基本用法,主要是如何封装一个类的各项要素,包括成员属性、成员方法、构造方法等,想必大家对类的简单运用早已驾轻就熟。所谓“物以类聚,人以群分”,之所以某些事物会聚在一起,乃是因为它们拥有类似的品性。那么面向对象的目的,就是将一群事物之间共同的行为特征提炼出来,从而归纳为具有普适性的类型。 阅读全文
posted @ 2019-01-13 13:28 pinlantu 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了类的基本定义,包括成员属性、成员方法、构造方法几个组成要素,可谓是具备了类的完整封装形态。不过在进行下一阶段的学习之前,有必要梳理一下前述的类定义代码,看看是否存在哪些需要优化的地方。首先观察以下的代码片段,主要是重量属性的定义及其设置方法: 注意到setWeight方法的输入参数名叫in 阅读全文
posted @ 2019-01-10 21:47 pinlantu 阅读(503) 评论(0) 推荐(0) 编辑
摘要: 前面介绍了如何定义一个简单的类,以及它的成员属性和成员方法,从示例代码可以看到,不管是OrangeSimple还是OrangeMember,都要先利用关键字new创建一个实例,然后才能通过实例名称访问成员属性和成员方法。不知道大家有没有注意到,new后面的类名跟着一副圆括号,就像下面代码这样: 可圆 阅读全文
posted @ 2019-01-08 21:58 pinlantu 阅读(611) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 16 下一页