Java教程

面向对象程序设计——五周习学内容总结

本文主要是介绍面向对象程序设计——五周习学内容总结,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

经过五周+的对java语言的学习以及对面向对象程序设计的学习,现以学习内容的不同为分类进行总结。

一 、对Java语言的学习

  此处只对重难点以及Java语言较笔者以往了解过的C以及Python语言的差异之处进行总结,较为基础的除外。

  1.继承

  关键词:父类、子类、extends、super

  • 子类拥有父类非 private 的属性、方法。

  • 子类可以拥有自己的属性和方法,即子类可以对父类进行扩展。

  • 子类可以用自己的方式实现父类的方法。

  • Java 的继承是单继承,但是可以多重继承,单继承就是一个子类只能继承一个父类,多重继承就是,例如 B 类继承 A 类,C 类继承 B 类,所以按照关系就是 B 类是 C 类的父类,A 类是 B 类的父类,这是 Java 继承区别于 C++ 继承的一个特性。

  • 增加了类之间的耦合性。

  2.多态

  关键词:继承、重写(override)、接口(interface)、抽象(abstract) 

  • 1. 消除类型之间的耦合关系
  • 2. 可替换性
  • 3. 可扩充性
  • 4. 接口性
  • 5. 灵活性
  • 6. 简化性

  3.类

  关键词:class

  • 类是一个模板,它描述一类对象的行为和状态。

二、对Java语言的练习

  1.PTA习题

  

 

   共进行了七次PTA习题练习,以下只列出对笔者影响较大的部分题目

         

  题目集01中7-2 日期类设计 以及与其相连接的7-3、7-4.

  此题继承于寒假题目集02中7-2、7-3、7-4,由于笔者在寒假题目集02对于前n天和下n天以及相差天数的代码过于繁琐,搬运到此题来之后容易运行超时,所以此题对于笔者几乎是全部重新写了一遍,在此期间也获得了一种新的思路

  

 

   题目集03中7-2 串口字符解析.

  此题主要困扰笔者的在于奇偶校验以及整体的逻辑上,为解决此题也是花费了笔者好一番功夫。

  

  总体来说,PTA上的习题主要起到对Java语言语法的复习功能。

 

 

三、对面向对象程序设计的学习

  关键词:SRP(Single Responsibility Principe,单一职责原则)、Demeter法则(Law of Demeter)、“开-闭”原则、里氏代换原则、MVC模式

  面向对象设计六大基本原则:

    1.单一职责原则:一个类只附有一种职责

  • 可以降低类的复杂度,一个类只负责一项职责,其逻辑比负责多项职责简单的多;

  • 提高类的可读性,提高系统的可维护性;
  • 变更引起的风险降低,变更是必然的,如果单一职责原则遵守的好,当修改一个功能时,可以显著降低对其他功能的影响。

    2.里氏替换原则:当使用继承时,遵循里氏替换原则。类B继承类A时,除添加新的方法完成新增功能P2外,尽量不要重写父类A的方法,也尽量不要重载父类A的方法

  • 减少对象间的耦合性;
  • 提高程序的可移植性;
  • 提高系统的可维护性。

    3.依赖倒置原则:将类A修改为依赖接口I,类B和类C各自实现接口I,类A通过接口I间接与类B或者类C发生联系,则会大大降低修改类A的几率

  • 可以降低类之间的耦合性;
  • 提高系统的稳定性;
  • 降低修改程序造成的风险;
  • 给多人并行开发带来了极大的便利。

    4.接口隔离原则

    5.迪米特原则:尽量降低类与类之间的耦合

    6.开闭原则:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化

 

  对于笔者面向对象程序设计的学习,主要体现在雨刷问题上,从第一次雨刷问题到第五次逐步增强面向对象程序设计的思想

 

 

这篇关于面向对象程序设计——五周习学内容总结的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!