Java学习手册——第二篇面向对象程序设计

这篇具有很好参考价值的文章主要介绍了Java学习手册——第二篇面向对象程序设计。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第一章我们已经介绍了Java语言的基础知识,也知道他能干什么了,
那我们就从他的设计思想开始入手吧。
接触一个语言之前首先要知道他的大方向,设计思想是什么样的,
这样接触起来就知道基本原理,才能事半功倍。

1. 结构化程序设计

迪克斯特拉(E.W.dijkstra)在 1965 年提出结构化编程,摒弃了 goto 语句,而以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,这样使完成每一个模块的工作变得单纯而明确,为设计一些较大的软件打下了良好的基础。按照结构化编程的观点,任何算法功能都可以通过三种基本程序结构(顺序、选择和循环)的组合来实现。
结构化编程主要表现在以下三个方面:

  1. 自顶向下,逐步细化。将编写程序看成是一个逐步演化的过程,将分析问题的过程划分成若干个层次,每一个新的层次都是上一个层次的细化。
  2. 模块化。将系统分解成若干个模块,每个模块实现特定的功能,最终的系统由这些模块组装而成,模块之间通过接口传递信息。
  3. 结构化编码。根据已经细化的算法正确写出计算机程序。

典型的公式: 程序 = 数据结构 + 算法
结构化编程一般适用于底层的语言,比如:C语言。
他们的特点就是按部就班逐步细化,瀑布形式十分理性的编程。
Java学习手册——第二篇面向对象程序设计,# JavaSE整理,浩哥的JAVA之路,java,面向对象,Java学习,结构化程序设计

2. 面向对象

面向对象程序设计(OOP)的发明者:奥利-约翰·达尔、克里斯汀·尼加德
1967年5月20日两位发明者在编程语言Simula67中提出的,然后影响了众多语言:Java、C#、Python等。。。
最重要的三大特性:
封装: 就是把数据属性和行为方法整合成一个整体,就可以当成一个整体的功能来使用。
继承: 这里就要提到类了,比如把人统称为人类,又可以按职业分成其他的子类。
多态: 可以通过重载的方式实现,不同的子类对相同的方法可以做不同的处理。
这里理解起来可能比较困难,刚一入门的时候还是不很适应,
当别人提起你是怎么抽象出属性和方法的?
这些黑话听得懵懵懂懂,但是经常练习就好了。
比如我们将人类根据职业抽象出老师、学生、程序员等,
然后里面的属性有:年龄、性别、籍贯(静态的数据)
方法就是动态功能:说话、行走、吃饭(有动作的行为)
Java学习手册——第二篇面向对象程序设计,# JavaSE整理,浩哥的JAVA之路,java,面向对象,Java学习,结构化程序设计
大家可以多多练习一下:

  1. 什么是类?什么是对象?什么是实例?
  2. 以学生为实体,定义其属性和方法。

参考文档:
聊聊编程范式
Java面向对象的三大特征以及理解文章来源地址https://www.toymoban.com/news/detail-651657.html

到了这里,关于Java学习手册——第二篇面向对象程序设计的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【面向对象程序设计】账户类(Java、JavaFX)

    目录 版本1: 设计Account1类,包含: 设计测试类ATMMachine1: 版本2: 扩展Account1类为Account2类:   设计测试类ATMMachine2,其主菜单如下: 版本3: uml啥的找不到了,太久远了,有什么不懂得评论或者私聊问我吧。 ■ 一个名为id 的int 类型的私有数据域(默认值为0),长度为6位

    2024年02月08日
    浏览(43)
  • .NET 面向对象程序设计 —— 学习笔记 详细版

            开始考虑通过封装、继承、多态把程序的耦合度降低(传统印刷 术的问题就在于所有的字都刻在同一版面上造成耦合度太高所制),开始用设计模式使得程序更加的灵活,容易修改, 并且易于复用。         大鸟说:“且先不说出题人的意思,单就你现在的

    2024年04月26日
    浏览(39)
  • [面向对象程序设计] 汽车租赁系统(Java实现)

    通过Java简单实现汽车租赁系统。 1)系统分为管理员和用户角色登录,不同的角色有不同的权限操作; 2)管理员功能:查看、添加、修改和删除车辆信息,查看营业额; 3)用户功能:登录后,可以查看车辆、租车、换车,模拟付款等; 查看车辆:查看可租/已租车辆;特定

    2023年04月21日
    浏览(47)
  • Java面向对象程序设计实验报告(实验五 接口的练习)

    ✨ 作者:命运之光  ✨ 专栏: Java面向对象程序设计实验报告 ​ 目录 ✨一、需求设计 ✨二、概要设计 ✨三、详细设计 ✨四、调试结果 ✨五、测试结果 ✨附录:源程序代码(带注释) demo5类 Instrument类 Piano类 play类 Student类 Teacher类 Violin类 work类  实验五 接口的练习 实验

    2024年02月06日
    浏览(45)
  • 面向对象程序设计(Java)课程设计——学生信息管理系统(GUI+文件)

    一、团队成员及任务 组长:宗庆亮  计科(智能)22-1  202203200021 负责模块:静态登录界面实现以及学生信息系统管理界面的创建 组员:郑金洲  计科(智能)22-1  202203200022 负责模块:增加,删除,修改以及查询功能的实现 团队博客:面向对象程序设计(Java)课程设计——学生

    2024年02月03日
    浏览(56)
  • [ XJTUSE ]JAVA语言基础知识——第一章 面向对象程序设计思想

    类描述了一组有相同 特性 (属性)和相同 行为 (方法)的对象,类和对象是面向对象思想的两个核心概念 · 人类是一种类,每一个具体的人则是这个类的对象 用面向对象程序来模拟真实世界 发现并创建类 发现类的特征 发现类的行为 在面向对象程序中,对象的特征由各种

    2023年04月13日
    浏览(92)
  • 【从零开始学习JAVA | 第二十二篇】BigInteger

    目录  前言:  BigInterger: BigInteger常见的方法: 总结:         本篇我们将介绍BigInteger这个比较实用一点的API,这个API在我们实际写项目中都是很实用的API,因此大家应该对这个API有更加熟练的掌握。 在Java中,整数类型int和long的取值范围是有限的,超出该范围的整数无法

    2024年02月15日
    浏览(68)
  • 【从零开始学习Java重要知识 | 第二篇】深入解读ThreadLocal类

    目录 前言:  ThreadLocal:  ThreadLocal的内部结构:   ThreadLocal的常用方法: 1.set方法: 2.get方法: 3.setInitialValue方法 remove方法(): ThreadLocalMap:​编辑 成员变量: 存储结构:  高频考点: 总结:          当我们编写多线程程序时,经常会遇到一些需要在线程之间共

    2024年01月18日
    浏览(47)
  • android面向切面编程,【Docker开篇第二篇】Docker 掌握核心技(1),【深夜思考】

    使用 --label-file 标志从文件中加载多个标签。用EOL标记分隔文件中的每个标签。以下示例从当前目录中的标签文件中加载标签: $ docker run --label-file ./labels ubuntu bash 标签文件格式与加载环境变量的格式相似。(与环境变量不同,在容器内运行的进程看不到标签。)以下示例说

    2024年04月16日
    浏览(35)
  • 【Java基础教程】(八)面向对象篇 · 第二讲:Java 数组全面解析——动态与静态初始化、二维数组、方法参数传递、排序与转置、对象数组、操作API~

    掌握数组的动态及静态创建方式、使用及特征; 掌握引用类型数据的特征; 掌握数组的排序、转置操作; 数组可以将多个变量进行统一的命名,这样相同类型的元素就可以按照一定的顺序进行组合排列 。在 Java中,数组属于引用类型数据,所以在数组的操作过程中,也一定

    2024年02月13日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包