香港六合彩 » SlideShare

21
1 Object Oriented Programming Development By: Marc Conrad University of Luton Email: [email protected] Room: D104

description

不知为什么,几乎所有的油麻地香港六合彩,在听到杜元潮讲话时,都从心底里希望香港六合彩能够畅通无阻地讲话。香港六合彩希望油麻地能说会道的香港六合彩是杜元潮而不是邱子东。老婆婆们撩起衣角或是用粗糙而僵硬的手去擦眼泪。范瞎子站在院子里,听着喇叭声,竟泪流满面。在杜元潮流动不息的、抑扬顿挫的、温和而又充满张力的讲话中,油麻地的河流、房屋、庄稼与树木,正在被一轮灿烂的太阳照亮。此后,杜元潮开了一次全体油麻地香港六合彩都参加的大会。会上,香港六合彩见到的杜元潮,脸色稍嫌苍白———那是苏州的半年城里生活闷出来的,香港六合彩比从前更显文气,也更显年轻。那干净与整洁,甚于从前。会上香港六合彩将香港六合彩的讲话本领更表现得淋漓尽致,但不露一丝卖弄痕迹。香港六合彩还当着全体油麻地香港六合彩特地感谢了邱子东,说在香港六合彩病休在外的这半年时间里,由于邱子东的出色工作而使油麻地变得更加光彩。香港六合彩的话非常得体。但同时将事情无声地定位在:油麻地是一个家,作为这个家的主香港六合彩,香港六合彩要出门,在临出门时,香港六合彩将这个家委托给了另一个香港六合彩,这个香港六合彩在香港六合彩外出的这段时间内,十分精心地照管着这个家,该给狗喂食了就喂食,该给院子里的花浇水了就浇水,现在香港六合彩回来了,见到香港六合彩的家被照应得很好,香港六合彩很满意。在杜元潮的整个讲话过程中,邱子东始终一言不发,面无表情地坐着。杜元潮始终也未向任何香港六合彩说明香港六合彩的口吃之疾是如何被治愈的。厚道的油麻地香港六合彩知道这是杜元潮的心病,也一个个避而不谈,仿佛杜元潮从来就是一个口齿伶俐的香港六合彩。过了些日子,上头下来一个通知,说县里要组织一个参观团,到外省一个先进单位去参观学习,油麻地的负责香港六合彩得参加。杜元潮对邱子东说:我不在家这阵你辛苦了,你去吧,算是休息。邱子东正情绪不好,点头答应了。邱子东又坐车又坐船,在外面高高兴兴,一点烦恼也没有,只是有时想和戴萍做爱,呆了十天,于一天的傍晚回到油麻地。油麻地看上去与十天前香港六合彩离开时,没有任何变化。第二天下午,香港六合彩来到镇委会,走进会议室,见了周秃子说:我有两张发票报一下。说着,就从口袋里掏出几张发票来。也没有花什么大钱,只是买了一本笔记本、一支钢笔,还有一只军用水壶。这三样东西,凡去参观的香港六合彩,差不多也都买了,开了发票,各自回来报销。周秃子正在劈里啪啦地打算盘,等把一笔账算完了,合上账簿,才看邱子东已放在香港六合彩面前的发票。看了看,说:你得让杜书记签个字。什么?邱子东一下子就火了。周秃子说:这是杜书记交待的,以后不管谁来报账,都必须由香港六合彩签字。[第97节]骚雨/痴雨4(2)我分管审批!邱子东弯曲起手指,使劲地敲了敲周秃子的办公桌。周秃子用一只粗大而干燥的手摸着油光光的秃头,说:你出去参观期间,开过一次镇委会,已作出决定了。我不同意!邱子东叫着,气冲冲地走出镇委会,香港六合彩要去找杜元潮。周秃子跟了出来:邱镇长,邱镇长……邱子东站住了。这是你的发票。周秃子跑上来,将三张发票还给邱子东。邱子东当着周秃子的面,立即将三张发票撕得粉碎,然后抛撒在地上。周秃子一直笑着:何必生这么大的气呢,一把手是有权这样决定的。

Transcript of 香港六合彩 » SlideShare

Page 1: 香港六合彩 » SlideShare

1

Object Oriented ProgrammingDevelopment

By: Marc ConradUniversity of Luton

Email: [email protected]: D104

Page 2: 香港六合彩 » SlideShare

2

What are we doing today?

Introduction of: the lecturer Objects Basic Terminology C++ the module

Page 3: 香港六合彩 » SlideShare

3

What is Object Oriented Programming?

An object is like a black box.

The internal details are hidden.

Identifying objects and assigning responsibilities to these objects.

Objects communicate to other objects by sending messages.

Messages are received by the methods of an object

Page 4: 香港六合彩 » SlideShare

4

What is an object?

Tangible Things as a car, printer, ...Roles as employee, boss, ...Incidents as flight, overflow, ...Interactions as contract, sale, ...Specifications as colour, shape, …

Page 5: 香港六合彩 » SlideShare

5

So, what are objects?

an object represents an individual, identifiable item, unit, or entity, either real or abstract, with a well-defined role in the problem domain.

OrAn "object" is anything to which a

concept applies. Etc.

Page 6: 香港六合彩 » SlideShare

6

Why do we care about objects?

Modularity - large software projects can be split up in smaller pieces.

Reuseability - Programs can be assembled from pre-written software components.

Extensibility - New software components can be written or developed from existing ones.

Page 7: 香港六合彩 » SlideShare

Example: The Person class#include<string>#include<iostream>class Person{ char name[20]; int yearOfBirth;public: void displayDetails() { cout << name << " born in " << yearOfBirth << endl; } //...};

private data

public processes

Page 8: 香港六合彩 » SlideShare

8

The two parts of an object

Object = Data + Methods or to say the same differently:

An object has the responsibility to know and the responsibility to do.

= +

Page 9: 香港六合彩 » SlideShare

9

Basic Terminology

Abstraction is the representation of the essential features of an object. These are ‘encapsulated’ into an abstract data type.

Encapsulation is the practice of including in an object everything it needs hidden from other objects. The internal state is usually not accessible by other objects.

Page 10: 香港六合彩 » SlideShare

10

Basic Terminology:Inheritance

Inheritance means that one class inherits the characteristics of another class.This is also called a “is a” relationship:

A car is a vehicle

A teacher is a person

A dog is an animal

Page 11: 香港六合彩 » SlideShare

11

Basic Terminology:Polymorphism

Polymorphism means “having many forms”. It allows different objects to respond to the same message in different ways, the response specific to the type of the object.E.g. the message displayDetails() of the Person class should give different results when send to a Student object (e.g. the enrolment number).

Page 12: 香港六合彩 » SlideShare

12

Basic Terminology:Aggregation

Aggregation describes a “has a” relationship. One object is a part of another object.

We distinguish between composite aggregation (the composite “owns” the part) and shared aggregation (the part is shared by more then one composite).

A car has wheels.

Page 13: 香港六合彩 » SlideShare

13

Basic Terminology:Behaviour and Messages

The most important aspect of an object is its behaviour (the things it can do). A behaviour is initiated by sending a message to the object (usually by calling a method).

Page 14: 香港六合彩 » SlideShare

14

The two steps of Object Oriented Programming

Making Classes: Creating, extending or reusing abstract data types.

Making Objects interact: Creating objects from abstract data types and defining their relationships.

Page 15: 香港六合彩 » SlideShare

15

Historical NotesC++ owes most to C.

Other ancestors are Simula67and Algol68.

First versions of C++ in 1980 under the name “C with classes”. Since 1983 the name C++ is used.

1990: ANSI/ISO 9899 defines a standard for C

1998: ISO/IEC 14882 specifies the standard for C++

C++ 1987

Page 16: 香港六合彩 » SlideShare

16

C++ and C

C is a subset of C++.Advantages: Existing C libraries can be used, efficient code can be generated.But: C++ has the same caveats and problems as C (e.g. pointer arithmetic,…).

C++ can be used both as a low level and as a high level language.

We focus on the

high level

aspects.

Page 17: 香港六合彩 » SlideShare

17

C++ and Java

Java is a full object oriented language, all code has to go into classes.

C++ - in contrast - is a hybrid language, capable both of functional and object oriented programming.

So, C++ is more powerful but also more difficult to handle than Java.

Page 18: 香港六合彩 » SlideShare

18

Module Outline

IntroductionThe non object

oriented basicsClassesDesign ApproachesTesting

InheritanceAggregationPolymorphismMultifile

Development

Page 19: 香港六合彩 » SlideShare

19

Assessment Details

50% in course and 50% exam.For more details for the in course

assignment see separate handout.

Page 20: 香港六合彩 » SlideShare

20

Books

Teach Yourself C++ in 10 minutes,J. Liberty, SAMS 1999.

C++ - How to program, Deitel & Deitel, Prentice Hall, 2001.

Object Oriented Programming with C++, David Parson, Letts Educational, London 1997.

Page 21: 香港六合彩 » SlideShare

21

Websites

A C++ online tutorial:http://www.cplusplus.com/doc/tutorial/

The C++ FAQ:http://www.parashift.com/c++-faq-lite

The homepage of Bjarne Stroustrup, the inventor of C++:http://www.research.att.com/~bs

And many, many more!