Java语言入门教程(十):Java语言中的关联与依赖关系

在开始本文的学习前,先总结一下已经学习过的内容。在前面9篇文章中,主 要是介绍Java类中的基本语法,是按照先概括,再具体的循序渐进的方式进行的 。先介绍了Java类的主要组成部分:数据成员,方法成员,构造方法。然后对一 些通用的知识点进行了较详细介绍,如权限访问修饰符,包,静态修饰符,数据 类型等。了解了这些通用的知识点后,对于类的三个组成部分分别详细介绍,如 介绍了类中各种数据的相关问题,介绍了构造方法的相关问题,介绍了方法会使 用到的操作符,流程控制,以及调用方法会使用到的值传递等知识点。在了解了 这些以后,初学者应该可以比较清楚的理解一个独立的Java类,。但是,在Java 应用中,不可能只有一个Java类,而是会有很多Java类。这很多个Java类之间, 不可能是老死不相往来的,而会是彼此协作,完成复杂功能。所以,在了解了基 本知识点后,接下来,初学者应该着重学习Java语言中类与类的关系。

在本文中,将使用简单的Java类,展示Java语言中类与类之间常见的两种关 系:关联关系,和依赖关系

1、关联关系

类A关联类B的意思是,如果实例化一个A类的对象,同时,会有一个B类的对 象被实例化。简言之,B作为A的属性存在。如下:

class A{
       private B b;
}
class B{
}

2、依赖关系

类A依赖类B的意思是,如果A的对象要完成某一操作,必须使用B的对象的某 些操作来帮忙,才能完成。简言之,B作为A的某个方法的方法参数存在。如下:

class A{
       public void f(B b){
}
}
class B{
}

关联和依赖,是面向对象编程中,最常见的两种关系。假设有这样一个场景 描述:某培训中心提供免费培训课程,每门课程都有其名字以及原价。学员最多 每人可以选择一门课程,学员只要登记姓名,就可以选择一门课程来学习。

通过分析这个简单场景,可以很容易分析出,有两种对象:学员,课程。也 就是说,我们应该创建两个类,Student,Course。

Course类有两个属性,课程名称和原始价格。如下:

package com.csst.relation;
public class Course {
       private String title;
       private double price;
       public Course(String title, double price) {
              super();
              this.title = title;
              this.price = price;
       }
       public Course(String title) {
              super();
              this.title = title;
       }
       public Course() {
              super();
       }
       public String getTitle() {
              return title;
       }
       public void setTitle(String title) {
              this.title = title;
       }
       public double getPrice() {
              return price;
       }
       public void setPrice(double price) {
              this.price = price;
       }
}

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java
, 方法
, 类关系
, title
, public
, 关联
, 类与类数值传递
, 知识点
java类与对象
,以便于您获取更多的相关知识。

时间: 2024-09-20 03:51:24

Java语言入门教程(十):Java语言中的关联与依赖关系的相关文章

Java语言入门教程(十一):Java语言中的数组

在教程(十)中,我们学习了Java类之间常见的两种关系,即关联和依赖. 如果A关联或依赖B,如果仅从A到B这个方向看,从数量上,可能有1对1和1对多 两种可能.面向对象的应用,都是映射现实世界的对象以及对象之间的关系的, 仔细考察一下我们身边的情况,对象与对象之间如果存在关联或依赖,其实1对 多的关系更为常见.如,一个部门有多个员工,一个学员有多个院系,一个人有 多张毕业证书- 上篇文章中的例子,学生只能选择一门免费课程学习,如果培训中心加大优 惠力度,每个学生最多可以选择3门课程学习,应该如何

零基础易语言入门教程(五)之逻辑型数据类型_易语言

在上篇文章给大家介绍了零基础易语言入门教程(四)之数据类型,上篇针对数值到文本类型知识,今天给大家介绍下逻辑型数据. 具体方法和步骤如下所示: 1.逻辑型数据非真即假: 首先申请一个局部变量(A)类型为:逻辑型,编写代码为:A=1>2,那么输出的结果应为假,因等于1是赋值与1,然后代码中写道1大于2,所以这是假的,见下图所示: 2.关系运算符: 在上图大家需注意的是,A后面的等于号是赋值符号,而后面的≥,≠,<一些符号则是关系运算符. 关系运算符不是非要设置变量给其赋值才可以使用的,同样他可以

零基础易语言入门教程(二)之编程思路_易语言

易语言简介: 易语言是一门以中文作为程序代码编程语言.以"易"著称.创始人为吴涛.早期版本的名字为E语言.易语言最早的版本的发布可追溯至2000年9月11日.创造易语言的初衷是进行用中文来编写程序的实践.从2000年至今,易语言已经发展到一定的规模,功能上.用户数量上都十分可观. 上一篇跟大家讲了零基础易语言入门教程(一)编写第一个程序,然后接下来大家应该自己把支持库和易语言组件里面的控件全部认真的看一下,下面我直接跟大家分享下易语言简单编程思路. 方法和步骤如下所示: 1.易语言程序

微信公众帐号开发教程(十) 解析接口中的消息创建时间CreateTime

从微信公众平台的消息接口指南中可以看出,每种类型的消息定义中,都包含有CreateTime参数,它表示 消息的创建时间,如下图所示: 开发教程(十) 解析接口中的消息创建时间CreateTime-create time"> 上图是消息接口指南中4.1-文本消息的定义.注意CreateTime的描述:消息创建时间(整型),重点在于 这是一个整型的时间,而不是我们大家所熟悉的类似于"yyyy-MM-dd HH:mm:ss"的标准格式时间. 本文主要想介绍的就是微信消息接口中

Java语言入门教程(十二):Java语言中继承之基本概念

从教程(十)开始,已经从学习单个类的基本语法,转到了学习多个类之间 的关系.教程(十)中,学习了类与类长间的两种关系,关联和依赖.为了维护 1对多的关系,在教程(十一)中,学习了数组.除了关联和依赖,类与类还有 一种非常重要且常见的关系,就是继承.本文将介绍继承的概念.作用.使用场 景等. 假设有这样一个简单需求(其实谈不上是需求,仅仅为了初学者容易理解而 编造):某培训中心要开发一个内部员工管理系统.该培训中心目前有两个部门 ,技术资源部和业务部.技术资源部的员工负责讲课,称为讲师.业务部员工

Java语言入门教程(十四):Java语言中方法重载与方法覆盖

很多时候,某个Java类中有多个类似的方法.如Math类中,计算绝对值的方 法就会有多个,因为对不同数据类型的数计算方式不同.比如对float,int, long,double各类型的计算方式各不相同,那么Math类中就应该设计4个求绝对 值的方法,分别对每种类型进行计算.在这种情况下,最好的方式就是设计4个 同名,但是不同参的方法,如下所示(请参见API帮助文档): abs(double a) Returns the absolute value of a double value. abs(

Java语言入门教程(十三):Java语言中继承中的构造方法问题

教程(十一)中,了解了Java语言中继承的基本概念.Java中类与类的继承 ,是单继承,主要目的是复用.子类对象可以复用父类中权限允许的属性和方法 ,所以子类的构造方法和父类的构造方法之间,有一定的调用关系,本文中将进 行详细介绍. 首先,需要记住一个事实:子类的任何一个构造方法,都将先调用父类某个 构造方法.如子类Trainer中的构造方法: public Trainer() { } 虽然这个构造方法的方法体中什么代码也没有写,但是也调用了父类 Employee的构造方法,默认调用的是Empl

Java语言入门教程(十五):抽象类与抽象方法

在教程(十二)中,我们有这样的假设.假设有这样一个简单需求(其实谈 不上是需求,仅仅为了初学者容易理解而编造):某培训中心要开发一个内部员 工管理系统.该培训中心目前有两个部门,技术资源部和业务部.技术资源部的 员工负责讲课,称为讲师.业务部员工负责联系洽谈业务,称为销售.在管理系 统中,需要管理的是所有员工的姓名.薪水,以及讲师的技术方向,销售的任务 量.-.. 基于这样的假设,我们设计了三个类:父类Employee.子类Sales和Trainer .如果我们有如下语句: Employee e

Java语言入门教程(八):Java语言中的运算符与流程控制

不论使用何种语言,最终都是为了实现业务逻辑.在面向对象的编程语言中 ,业务逻辑都在方法中实现.因此,对于初学者来说,了解完成Java类方法体的 基本知识点是非常必要的.本文中,将介绍编写方法体必须了解的两个方面:运 算符,流程控制. Java中的运算符根据其功能,可以分成4类.首先需要注意的是,Java中的运 算符是不能重载的.下面分别对4类运算符进行介绍. 1. 算术运算符:+,-,*,/,%,++,-- 算术运算符是对基本数据类型进行运算的操作符,其中容易混淆的是/表示除 ,而%表示取余.另