java物件導向程式設計--類別的設計

上传人:小** 文档编号:89125908 上传时间:2019-05-19 格式:DOC 页数:17 大小:237KB
返回 下载 相关 举报
java物件導向程式設計--類別的設計_第1页
第1页 / 共17页
java物件導向程式設計--類別的設計_第2页
第2页 / 共17页
java物件導向程式設計--類別的設計_第3页
第3页 / 共17页
java物件導向程式設計--類別的設計_第4页
第4页 / 共17页
java物件導向程式設計--類別的設計_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《java物件導向程式設計--類別的設計》由会员分享,可在线阅读,更多相关《java物件導向程式設計--類別的設計(17页珍藏版)》请在金锄头文库上搜索。

1、本文档由 维维大豆 整理提供精品文档整理2011年9月21号Java物件導向程式設計-類別的設計傳統程式設計方式與物件導向程式設計的運作方式比較JAVA物件導向的觀念及結構:物件導向非JAVA所特有逗号但JAVA可謂集大成。Package包含Java語言本質(類別)的單位逗号即類別的存放區。類別(class) 一種型別逗号包含了資料和副程式(方法)的資料型別定義。方法(method)Java副程式的名稱。建構(constructing) 在執行時期將類別配置記憶體逗号並與變數產生連結。物件(object)、實例(instance) 已經建立instance 的類別型別的變數。Instantia

2、tion物件導向的好處:資料的隱藏性(Data Hiding)封裝(encapsulation)透過繼承的重複使用性(reusability)維護性(maintainance)Java類別階層架構父類別(super class) 一個可延伸(extends)出其他類的類別子類別(subclass) 一個從某一類別所延伸(derived)出來的類別基底類別(base class)在階層架構的關係中逗号是所有其他類別父類別的類別特別的變數:null逗号this逗号super 三個變數。建立類別的instance 當我們用new運算子時逗号我們就給了類別生命(即配置記憶體的動作)逗号使之成為一個物件

3、並將它設值給一個變數。利用new這個保留字來建構一個物件,其中是呼叫建構函式的意思,建構函式是為物件做初始化的 = new (); 或 ; /先宣告 = new ();/再建構物件 SomeClass A = new someClass( );何謂類別(class)何謂物件類別結構public class Class_Name /data member /methods類別包括兩個主體1.Data member(資料成員)-是儲存資料的變數逗号又稱為欄位(fields)。類別成員變數:實例變數(instance variables)又叫nonstatic variables類別變數(class

4、 variables)又叫static variables2.類別方法類別方法變數:實例函式(instance methods)又叫nonstatic methods類別函式(class methods)又叫static methods定義類別:實例一:class Pizzaint size = 12; boolean thickness = true; /厚薄Category peperoni = new Category(); Pizza cook(Category cat);Work: 老師先使用Jcreator示範一遍,同學們跟著測試一遍./comment methods or put

5、 empty body.實例二:class Pointint x;int y;int getX();int getY();Point getLocation()void setLocation()void move(int x, int y)void translate(int dx, int dy)boolean equals(Point p)Work: 老師再利用Jcreator示範一遍,同學們跟著做一遍./comment methods or put empty body.實例三:class Sphere static final double PI = 3.14;/ class var

6、static int count = 0;/ class vardouble radius; /instance vardouble xCenter;/ instance var double yCenter; / instance var double zCenter; / instance var w/ methods not mentioned here yet.Work:請定義一個簡單的類別逗号並編譯之(類別名稱自定)。定義方法(method)方法的格式return_type methodName(arg1,args2.,argsn)block of function body;ret

7、urn return_value; Work:請在剛剛定義的Sphere類別裡逗号加入適當的方法。製造物件:Sphere mySphere = new Sphere();靜態成員的存取方法:class_Name.data_member;如:System.out.println(Sphere.PI);doubled = Math.PI; /static memberSystem.out.println(d);非靜態成員的存取方法:object_name.data_member;如:mySphere.xCenter;靜態成員方法的存取方法:class_Name.member_function();

8、如:System.out.println(Sphere.getCount();非靜態成員方法的存取方法:object_name.member_function();如:System.out.println(mySphere.volume();參數(parameters)與引數(arguments)間的傳遞pass-by-value only.建構函式(Constructor):建立物件時逗号會用到的特定函式。建構子格式:1 無傳回值逗号也不可有void等字樣逗号2 函式名稱與類別名稱相同Work:建一主程式逗号以測試Sphere類別(即加入方法) 方法負載(Method Overloading

9、)(同名異式):只與函式簽名(signature)有關(函式名稱逗号參數型態逗号順序逗号個數)Work:請在Sphere類別加入一無參數及另一只有三個參數的建構函式。this變數 該用this.x = x;時,省略this.並以 x=x;會有問題的.因省略時等號左右都當作this.this很常用,因它可以用來代表目前所在的類別,可以很清楚的知道這個變數的所屬類別。有時候你必須將本身這個物件傳給其他部份逗号此時可傳入this這個變數即可。this 的兩種用途:1, this.的用途及2,this()的用途i指引出正在執行的物件逗号它可以替method指出相對應於this的變數syntax: th

10、is.varName如上述class Sphere內之方法i指引出正在執行的物件逗号它可以替method指出相對應於this的變數syntax: this.varNameiithis可讓同一class內的某一constructor內明確使用另一constructor。syntax: this(args);初始化資料成員與初始化區塊1.靜態初始化區塊:在定義時必須使用關鍵字static逗号只在類別載入時執行一次(而非在建構它時)逗号而且只能初始化類別中的靜態資料成員。2.非靜態初始化區塊:在每個物件建立時執行逗号可以初始化類別中的實例變數。class TryInitialization stat

11、ic int values = new int10; / Static array member / Initialization block/ static System.out.println(Running initialization block.); for(int i=0; ivalues.length; i+) valuesi = (int)(100.0*Math.random(); / List values in the array for an object void listValues() System.out.println(); / Start a new line

12、 for(int i=0; ivalues.length; i+) System.out.print( + valuesi); / Display values System.out.println(); / Start a new line public static void main(String args) TryInitialization example = new TryInitialization(); System.out.println(nFirst object:); example.listValues(); example = new TryInitializatio

13、n(); System.out.println(nSecond object:); example.listValues(); Work:請建一類別,放入欄位及方法,並在建構元初始化各欄位.例如:class Car,class Bakery套件(Package)Java程式語言必須將類別放置在與套件名稱相對的目錄階層中。但此要求並不代表此套件所對應的目錄必須是檔案系統中的頂層目錄。它可位於檔案系統中任何的地方。類別成員的存取權限控制逗号類別的延伸繼承與類別的多形4種存取屬性:modifier之作用:設定存取層級(access level)及顯性(visibility)(1)private (2)完全不指定default(不加任何modifier)(3)protected(4)public類別的延伸繼承名詞解釋:衍生類別(derived class)又叫做子類別(subclass)基礎類別(base class)又叫做父類別(superclass)/請以Animal.java逗号Dog.java及TestDerived.java說明繼承關係覆載(overriding)基礎

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号