Java語言入門教程(十):Java語言中的關聯與依賴關係

來源:互聯網
上載者:User

在開始本文的學習前,先總結一下已經學習過的內容。在前面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;       }}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.