上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)Chapter05 面向对象与图形编程

面向对象与图形编程

数据与操作:传统观点 数据类型(data type) Each data type can represent a certain set of values(某种值的集合) each had a set of associated operations(运算,操 作) The traditional programming view is that data is passive(被动的),-it's manipulated and combined with active(主动的)operations. 例如:string类型的值是'abc'等,对串的操作有+,*,len()等 2
2

数据与操作:面向对象观点 对象(Object) An object is a sort of active data type that combines data and operations. -对象contain data. - 对象have operations. view a complex system as the interaction of simpler objects.Objects interact by sending each other messages. 3
3

数据与操作:面向对象观点 面向对象(Object-Oriented基本思想: 软件系统由各种对象组成,对象之间通过消息进行交 互. 00语言 C++(过程性语言C发展而来) Visual Basic(过程性语言Basic发展而来) Java Python 4
4

OO基本概念 类(class):描述同类对象的共性 包含的数据 ·任何类型的数据,甚至可以是对其他对象的引用. -1 能执行的操作(方法) 对象(object):类的实例(instance) 一类可以创建多个实例 同类的不同对象可有不同的数据值(实例变量),但能执行的 操作是一样的 例如: 类:file 对象:infileName,outfileName 5
5

OO基本概念 创建对象:使用类的构造器(constructor)(构造 函数) -(,,.) 例如: file(filename[,mode]) open(,) 消息:请求对象执行它的方法 -.(,,…) -例如:infileName.close() 6
6

对象的方法 不同类的对象当然提供不同的操作 对象一般都提供读取它的实例变量值的方法, 统称为accessor. -Point对象的getX()和getY() Line对象的getP1()和getP2() 对象一般也提供修改其实例变量的方法,统称 为mutator. 例:所有图形对象都有move(dx,dy)方法.将对象 在x方向移动dx个像素,在y方向移动dy个像素, 自动擦除其原来的图像,并在新位置处显示 7
7

图形编程 图形编程框架 -Python的Tkinter 使用本书作者写的图形库: graphics,py(便于初学者使用) 放入Python'sLib目录(directory)文件夹 python \lib\ 或者放在与你的程序同一文件夹(目录,folder)下 ■ import graphics.或 from graphics import -后者可使引用库函数更方便 ■开始编写图形程序 8
8

图形窗口 图形窗口:画图的地方 Win graphics.Graphwin ( win=Graph时in() #用from语句引入图形库时可写成这样 创建GraphWin类的对象,并赋值给实例变量 win 试试:type(GraphWin)和type(win) type(GraphWin())分别是什么 - 通过给对象win发消息,让对象做事情 ■例如:win.close() 9
9

图形窗口 窗口是由像素组成的 默认大小200*200(分辨率) 画图:实际就是控制各像素的颜色 10
10
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter04 字符串计算.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter03 数值计算.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter02 程序基本构件.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter01 课程简介、计算机与程序.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源_期末大作业要求.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源_往年试卷_CT2012-A卷-final.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源_往年试卷_CT2012-A卷-final 2_参考答案.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源_参考教材_参考教材-python-programming.pdf
- 上海交通大学:《程序设计思想与方法》课程教学资源_参考教材_参考教材-2002版-PythonProgrammingBook.pdf
- 上海交通大学:《程序设计思想与方法》课程教学资源_参考教材_HowToThink-Python.pdf
- 上海交通大学:《程序设计思想与方法》课程教学资源_作业_第一次作业内容要求.pdf
- 上海交通大学:《程序设计思想与方法》课程教学资源_作业_第一次作业内容要求.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源(上机课)第四次上机_Python第四次上机题目.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源(上机课)第五次上机_第五次上机.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源(上机课)第三次上机_Python第三次上机解析-update.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源(上机课)第三次上机_python第三次上机.doc
- 上海交通大学:《程序设计思想与方法》课程教学资源(上机课)第一次上机_第一次上机内容_10.18.pdf
- 上海交通大学:《程序设计思想与方法》课程教学资源(上机课)第一次上机_第一次上机内容_10.18.doc
- 上海交通大学:《科学计算》课程教学资源(英文讲义)Lecture Note 4:Numerical differentiation and integration.pdf
- 上海交通大学:《科学计算》课程教学资源(英文讲义)Lecture Note 3:Polynomial Interpolation.pdf
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter06 函数.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter07 控制结构(条件语句).ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter08 控制结构(循环语句).ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)Chapter10 类的定义.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter11 数据集合体.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter9 模拟与设计.ppt
- 《Embedded System LAB》教学资源:KEIL Tools by ARM Getting Startedu Creating Applications withμVision®(uv4).pdf
- 上海交通大学:《程序设计思想与方法》课程教学资源(上机课)第二次上机_第二次上机题目_11.1.doc
- 《程序设计思想与方法》课程教学资源(课程参考书PDF电子版)PYTHON programming:AN INTRODUCTION TO COMPUTER SCIENCE(JOHN ZELLE).pdf
- 《程序设计思想与方法》课程教学资源(课程参考书PDF电子版)Python Programming:An Introduction to Computer Science(2002版).pdf
- 《程序设计思想与方法》课程教学资源(课程参考书PDF电子版)How to Think Like a Computer Scientist Learning with Python.pdf
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter01 课程简介、计算机与程序.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter02 程序基本构件.ppt
- 上海交通大学:《程序设计思想与方法》课程教学资源(PPT课件讲稿)chapter03 数值计算.ppt
- 上海交通大学:《面向对象软件工程 Software Engineering》课程教学资源(PPT课件讲稿)00. Course Introduction.pptx
- 上海交通大学:《面向对象软件工程 Software Engineering》课程教学资源(PPT课件讲稿)01. Introduction to Software Engineering.pptx
- 上海交通大学:《面向对象软件工程 Software Engineering》课程教学资源(PPT课件讲稿)10.Mapping Models to Code.pptx
- 上海交通大学:《面向对象软件工程 Software Engineering》课程教学资源(PPT课件讲稿)11.Testing.pptx
- 上海交通大学:《面向对象软件工程 Software Engineering》课程教学资源(PPT课件讲稿)02. Modeling with UML.pdf
- 上海交通大学:《面向对象软件工程 Software Engineering》课程教学资源(PPT课件讲稿)03. Project Organization and Management.pdf