熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

對象的接口

2013-11-23 19:28:02  來源: Java核心技術 

  亞裡士多德或許是認真研究類型概念的第一人他曾談及魚類和鳥類的問題在世界首例面向對象語言Simula第一次用到了這樣的一個概念
  所有對象——盡管各有特色——都屬於某一系列對象的一部分這些對象具有通用的特征和行為在Simula首次用到了class這個關鍵字它為程序引入了一個全新的類型(clas和type通常可互換使用見注釋)
  Simula是一個很好的例子正如這個名字所暗示的它的作用是模擬(Simulate)象銀行出納員這樣的經典問題在這個例子裡我們有一系列出納員客戶帳號以及交易等每類成員(元素)都具有一些通用的特征每個帳號都有一定的余額每名出納都能接收客戶的存款等等與此同時每個成員都有自己的狀態每個帳號都有不同的余額每名出納都有一個名字所以在計算機程序中能用獨一無二的實體分別表示出納員客戶帳號以及交易這個實體便是對象而且每個對象都隸屬一個特定的那個類具有自己的通用特征與行為
  因此在面向對象的程序設計中盡管我們真正要做的是新建各種各樣的數據類型(Type)但幾乎所有面向對象的程序設計語言都采用了class關鍵字當您看到type這個字的時候請同時想到class反之亦然
  建好一個類後可根據情況生成許多對象隨後可將那些對象作為要解決問題中存在的元素進行處理事實上當我們進行面向對象的程序設計時面臨的最大一項挑戰性就是如何在問題空間(問題實際存在的地方)的元素與方案空間(對實際問題進行建模的地方如計算機)的元素之間建立理想的一對一對應或映射關系
  如何利用對象完成真正有用的工作呢?必須有一種辦法能向對象發出請求令其做一些實際的事情比如完成一次交易在屏幕上畫一些東西或者打開一個開關等等每個對象僅能接受特定的請求我們向對象發出的請求是通過它的接口(Interface)定義的對象的類型則規定了它的接口形式類型接口的等價或對應關系是面向對象程序設計的基礎
  下面讓我們以電燈泡為例
  
  Light lt = new Light();
  lton();
  在這個例子中類型/類的名稱是Light可向Light對象發出的請求包括包括打開(on)關閉(off)變得更明亮(brighten)或者變得更暗淡(dim)通過簡單地聲明一個名字(lt)我們為Light對象創建了一個句柄然後用new關鍵字新建類型為Light的一個對象再用等號將其賦給句柄為了向對象發送一條消息我們列出句柄名(lt)再用一個句點符號()把它同消息名稱(on)連接起來從中可以看出使用一些預先定義好的類時我們在程序裡采用的代碼是非常簡單和直觀的
  [注釋] 有些人進行了進一步的區分他們強調類型決定了接口是那個接口的一種特殊實現方式
  

From:http://tw.wingwit.com/Article/program/Java/hx/201311/26912.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.