2019.5.22读书笔记

《Head First Java》

  1. 编程时以面向对象的方式来思考,专注于程序中出现的事物而非过程。
    编程方法论:①找出类应该做的事;②列出实例变量与方法; ③编写方法的伪码; ④编写方法的测试用程序; ⑤实现类; ⑥测试方法; ⑦除错或重新设计。

  2. 伪码介于真正的代码与英语之间,包含3部分:变量声明,方法声明以及方法的逻辑。重要的是逻辑,真正的实现在后续转换成真实码时完成。【个人认为该部分可由流程图代替。】

  3. 在真实代码之前先写测试代码(即main代码),可以帮助了解被测程序应该做哪些事情。先写一部分测试码然后编写程序,重复这个过程至代码完成。

  4. 继承能否进行可使用IS-A测试,即A是一个B吗?True则可使A继承B。
    子类会继承父类所有的public类型变量及方法,但不会继承private;继承的方法可以覆盖但是成员变量无法覆盖。继承可以避免重复的程序代码,定义出共同协议,使程序变得更简洁、高效,能够编写出真正具有适应性的程序代码。

  5. 在多态下,引用与对象可以是不同的类型,任何extends过声明引用变量类型的对象都可以赋值给该引用变量,由此可创建多态数组。通过多态可以编写引进新型子类也不必修改的程序。

  6. 在方法前加上final修饰符可防止方法被覆盖,在类前加上final可防止该类被继承。覆盖父类方法时子类需要使用同样类型的参数,返回类型亦必须是父类返回类型或其子类,否则是重载而非覆盖。

  7. 抽象方法没有实体,声明后以;结尾,包含抽象方法的类都是抽象类。抽象方法的意义在于就算无法实现出方法的内容,也可以定义出子类共同遵守的协议,在新加入子类到程序中时不必重改处理这些类型的程序。

  8. 接口可用来实现多重继承且不产生致命方块问题。运用接口必须在继承之下。接口的好处在于可以为不同的需求组合出不同的继承层次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值