类与对象的关系分析
1.简单描述概念
类:类是一个抽象的且相对的数据类型。
对象:对象是一个具体且绝对的数据类型。
2.举例说明概念
人——是抽象的,因为人包含了很多的特征,也可以说是包含不同的人,这里的人可以是“张三”、可以是“李四”……可见这个不具体且不绝对的一个事物,人在这里只是一个统称。
人&中学生——当这两个事物在一起的,我们就可以很明显的看出,中学生是人,他属于人这个类的范畴之列,所以相对人这个类型来说,中学生算是一个绝对的类型。即特指学生这个对象。
如果还不清晰,再具体说一下,例如:“中央发布一项规定,禁止中学生暑期补课”。这条规定是针对中学生这个对象发布的,不是大学生,小学生或成长人,因此中学生在这里是一个绝对的事物,无二义性。
中学生&小明——其实,我们可以发现中学生也可以作为一个类,“小明”这个名字的人可以看作是一名中学生,那么在这里,中学生成为了抽象的,“小明”这个人成为了具体的。从而可以看出,类是相对的类型。
3.类与对象的特点
(1)安全性强:类在计算机语言中,起到非常重要的作用,它具有很好的封装性,可避免其它成员的非法访问和修改,但又可以灵活的使用类中的可用的资源。稍后我们会通过实例来探讨这一特点。
(2)利用性高:Java是一个纯面向对象的语言,类就成一个模型器,用于制造统一的模具(即对象),然后把这些各种各样的对象紧密的拼接在一起,来完成整个软件项目。可见类的可利用性就大大的增高。对象成为了建房的砖块,把大量的砖块拼接在一起可以建成一栋房子。软件工程也就这样一个原理。所以有一段时间我把自己的QQ昵称改成了“软件建筑师”,我觉得很切合软件工程这一名词。
(3)扩充性好:通过类来定义的对象,有时候我们可以把对象看作是对数据类型的一种扩充;系统基本数据类型,只能表示一个事物单一的属性,然而类通过封装,把多个基本数据类型(事物的多种属性)绑定在一起,这样不仅可以具体的表示一个具体的对象,同时也是对数据类型的一种扩充,存储大小的扩充。
3.Java实例分析
package TextClass;
/**
* 学生类
* @author Sean 2012 - 8
*/
public class Student {
String number; //学号
String name ; //姓名
int age; //年龄
double score; //分数
/**
* 构造函数
* @param number
* @param name
* @param age
* @param d
*/
public Student(String number, String name, int age, double d) {
this.number = number;
this.name = name;
this.age = age;
this.score = d;
}
/**
* 输出学生信息
*/
public void print(){
System.out.println("学号:"+number+" 姓名:"+name+" 年龄:"+age+" 分数:"+score);
}
}
package TextClass;
/**
* 主程序类
* @author Sean 2012 - 8
*/
public class Master {
/**
* 主程序入口
* @param args
*/
public static void main(String[] args) {
/**
* 创建三个学生信息
*/
Student student1 = new Student("000001", "张三", 18, 95.542);
Student student2 = new Student("000002", "李四", 19, 94.543);
Student student3 = new Student("000003", "王五", 17, 97.552);
/**
* 显示学生信息
*/
student1.print();
student2.print();
student3.print();
}
}
运行结果:
学号:000001 姓名:张三 年龄:18 分数:95.542
学号:000002 姓名:李四 年龄:19 分数:94.543
学号:000003 姓名:王五 年龄:17 分数:97.552
分享到:
相关推荐
C#是一种面向对象的编程语言,其核心概念之一就是类与对象之间的关系。类是对象的模板或蓝图,它定义了创建对象的属性和方法。对象则是类的具体实例,是实际存在的实体。 在C#中,创建类意味着定义了一组属性和方法...
7.3 确定类或对象之间的关系,如继承、关联、聚合和组合,有助于建立对象间的结构和交互。这些关系帮助我们理解类如何协同工作以完成系统功能,同时提高代码的重用性和可维护性。 7.4 设计类的属性涉及定义每个类的...
本教程“类与对象的分析与设计”将深入探讨如何从实际问题中抽离出这些概念,以便进行高效、结构化的程序设计。 首先,我们来理解什么是类。类可以看作是一种模板或者蓝图,它定义了一组属性(数据成员)和行为...
从给定的文件信息来看,虽然标题和描述主要聚焦于C++语言中类与对象的概念,但实际内容探讨的是数据库设计领域中实体关系(ER)模型的父类型与子类型的概念。这里,我们将深入理解C++中类与对象的基础概念,并结合ER...
不过,可以根据文件标题和描述提供的线索,进行面向对象系统分析与设计相关的知识点梳理。 面向对象系统分析与设计是软件工程领域的一个重要部分,它涉及如何使用面向对象的方法来分析和设计软件系统。面向对象方法...
类与类之间存在不同的关系,包括关联、依赖和聚合等。关联说明了对象间的语义联系;依赖表示一个类的实现需要依赖另一个类;聚合则是一种特殊类型的关联,表示“包含”或“拥有”。 6. 设计模式: 设计模式是一套被...
例如,可能会有题目要求根据业务描述画出相应的用例图,或者根据给定的类结构构建类图,并解释类与类之间的关系。 同时,面向对象设计(OOD)是紧接着分析的步骤,它将分析模型转化为具体的设计实现。设计过程中,...
面向对象分析(OOA)是整个软件开发生命周期的早期阶段,其目标是理解问题域,识别关键的对象和类,定义它们的属性和服务,以及它们之间的关系。OOA的主要任务是创建一个反映问题域的模型,为后续的面向对象设计...
在第八章中,作者详细介绍了类与对象的关系示例,通过计算机模型与计算机实体之间的关系来形象地说明类与对象之间的关系。 在第九章中,作者详细介绍了面向对象编程的基本概念,包括抽象、封装、继承、多态等重要...
本章内容主要围绕面向对象的数据模型和对象关系数据模型展开,详细讲解了对象数据库管理系统(OODBMS)的特点、优势与劣势,以及与传统数据库管理系统(DBMS)之间的区别。同时,也涉及了对象关系数据库系统(ORDBMS...
教学重点在于理解类与对象的概念及其关系,以及如何在Java代码中创建和使用对象。难点在于对象的创建和使用,因为这涉及到对构造函数和实例化过程的理解。成员变量是类的属性,存在于所有对象中,而局部变量仅在方法...
面向对象的系统分析与设计是计算机科学领域中的一个重要主题,它涵盖了软件开发过程中的一些关键概念和技术。本资源包括了相关的课件和课后答案,帮助学习者深入理解这一主题。以下将详细介绍其中涉及的主要知识点:...
4. **建立对象关系**:明确对象之间的关系,例如继承表示一般与特殊的关系,关联表示对象之间的连接,聚合表示部分与整体的关系,组合则是更强烈的聚合形式,表示组件对象生命周期与整体对象紧密绑定。 5. **制定...
面向对象设计(OOD)则是在分析的基础上,进一步细化模型,考虑如何实现这些模型,包括类的结构、关系以及它们之间的交互。 8. **设计模式**:在面向对象设计中,设计模式是解决常见问题的成熟方案,如单例模式、...
面向对象分析与设计(Object-Oriented Analysis and Design, 简称OOAD)是软件开发过程中的关键步骤,它结合了模型驱动工程(Model-Driven Engineering)与统一建模语言(Unified Modeling Language, UML)等现代...
4. **建立分析类图**:绘制类图来可视化系统中的对象结构,明确各对象之间的关系。 5. **评审分析模型**:通过需求分析评审等方式验证分析模型的准确性和完整性。 #### 四、分析类分类 分析类可以根据其在系统中的...
面向对象分析与设计(OOAD)是软件工程领域的一个核心概念,它涉及到将现实世界的问题转化为计算机程序的过程。本主题涵盖了面向对象编程的基本原理、分析方法、设计模式以及相关工具和技术。以下是对这一主题的详细...