py16-面向对象介绍与类

面向过程:核心是过程二字,过程指的是问题的解决步骤,即先干什么再干什么,基于面向
过程去设计程序就好比在设计一条流水线,是一种机械式的思维方式
优点:复杂的问题流程化,进而简单化
缺点:可扩展性差
应用:脚本程序,比如linux系统管理脚本,著名案例:linux内核,httpd,git

面向对象:核心是对象二字,对象就是特征与技能的结合体
优点:可扩展性强
缺点:复杂

类:是一系列对象相似的特征与技能的结合体

在现实世界中,先有一个个具体存在的对象,总结相似之处---现实中的类

在程序中:一定是先定义类,后调用类产生对象

定义类:
class OldboyStudent:
school = ‘oldboy‘
def learn(self):
print(‘is learning‘)
print(‘========>‘)

#类体的代码在类定义阶段就会执行

查看类的名称空间:
class OldboyStudent:
school = ‘oldboy‘
def learn(self):
print(‘is learning‘)

print(OldboyStudent.__dict__)

再定义:
class OldboyStudent:
school = ‘oldboy‘ #类的数据属性
def learn(self): #类的函数属性
print(‘is learning‘)
def eat(self):
print(‘is eating‘)
print(OldboyStudent.__dict__)

获取类内部的值:
class OldboyStudent:
school = ‘oldboy‘
def learn(self):
print(‘is learning‘)
def eat(self):
print(‘is eating‘)
print(OldboyStudent.__dict__[‘school‘])
print(OldboyStudent.__dict__[‘learn‘])

访问类的属性:
class OldboyStudent:
school = ‘oldboy‘ #类的数据属性
def learn(self): #类的函数属性
print(‘is learning‘)
def eat(self):
print(‘is eating‘)
# print(OldboyStudent.__dict__[‘school‘])
# print(OldboyStudent.__dict__[‘learn‘])
print(OldboyStudent.school)
print(OldboyStudent.learn) #就是函数的内存地址加()执行这个函数

类的函数属性的函数调用:
class OldboyStudent:
school = ‘oldboy‘ #类的数据属性
def learn(self): #类的函数属性
print(‘is learning‘)
def eat(self):
print(‘is eating‘)
# print(OldboyStudent.__dict__[‘school‘])
# print(OldboyStudent.__dict__[‘learn‘])
print(OldboyStudent.school)
print(OldboyStudent.learn)
OldboyStudent.learn(123)

修改类的属性:
class OldboyStudent:
school = ‘oldboy‘ #类的数据属性
def learn(self): #类的函数属性
print(‘is learning‘)
def eat(self):
print(‘is eating‘)
# print(OldboyStudent.__dict__[‘school‘])
# print(OldboyStudent.__dict__[‘learn‘])
print(OldboyStudent.school)
print(OldboyStudent.learn)
OldboyStudent.x=‘xtyang‘ #添加类的属性
OldboyStudent.school=‘Oldboy‘ #修改类的属性
print(OldboyStudent.__dict__) #查看

删除类的属性:
class OldboyStudent:
school = ‘oldboy‘ #类的数据属性
def learn(self): #类的函数属性
print(‘is learning‘)
def eat(self):
print(‘is eating‘)
# print(OldboyStudent.__dict__[‘school‘])
# print(OldboyStudent.__dict__[‘learn‘])
print(OldboyStudent.school)
print(OldboyStudent.learn)
OldboyStudent.x=‘xtyang‘
OldboyStudent.school=‘Oldboy‘
del OldboyStudent.school #删除类的属性
print(OldboyStudent.__dict__)

时间: 2024-08-07 00:16:34

py16-面向对象介绍与类的相关文章

Objective-C语言介绍 、 Objc与C语言 、 面向对象编程 、 类和对象 、 属性和方法 、 属性和实例变量

Objective-C语言介绍 . Objc与C语言 . 面向对象编程 . 类和对象 . 属性和方法 . 属性和实例变量 1 第一个OC控制台程序 1.1 问题 Xcode是苹果公司向开发人员提供的集成开发环境(非开源),用于开发Mac OS X,iOS的应用程序.其运行于苹果公司的Mac操作系统下. 本案例要求使用集成开发工具Xcode编写OC的HelloWorld程序,在Xcode的控制台中, 1.2 方案 首先,启动集成开发工具Xcode. 然后,创建OC语言的工程. 最后,运行所创建的工

面向对象之元类介绍

标签(空格分隔): 元类介绍 元类介绍: 在正式介绍元类之前,大家储备一下知识:exec; exec命令使用 这个命令有三个参数: 1.字符串形式的命令,(把字符串提取出来) 2.全局作用域:(字典形式,如果不指定,默认使用globals()) 3.局部作用域,(字典形式,如果不指定默认locals) g={'x':1, 'y':2} l={} exec(""" global x,m x=10 m=100 z=3 """,g,l) print(g

面向对象之元类介绍(未完待续)

标签(空格分隔): 元类介绍 元类介绍: 在正式介绍元类之前,大家储备一下知识:exec; exec命令使用 这个命令有三个参数: 1.字符串形式的命令,(把字符串提取出来) 2.全局作用域:(字典形式,如果不指定,默认使用globals()) 3.局部作用域,(字典形式,如果不指定默认locals) g={'x':1, 'y':2} l={} exec(""" global x,m x=10 m=100 z=3 """,g,l) print(g

js之JavaScript 面向对象介绍 ----谷营中西软件科技园

1. 面向对象介绍 1.1. 对象 在面向对象思想中,一切皆对象.所谓的对象,实质上是指"事物"(包括人和物)在程序设计 语言中的表现形式.这里的"事物"可以是任何东西.例如,我们将一名女生作为对象的话,那么她 可能是一名美丽的.高挑的.可爱的等等,这些形容这名女生的词,我们就叫做属性.那么她可能要 上学.工作.出国等等,这些女生要做的事情,我们就叫做方法. 所以,简单来说对象,可以这样描述.我们将世界上任何的人和物都理解成对象,用来描述对象 的特征叫做属性,用来描

面向对象介绍以及封装

面向对象基本概念 课程大纲 什么是面向对象 面向对象是一种编程思想 面向对象是一种思考问题的思维方式 如何建立面向对象思维 先整体在局部 先抽象在具体 能做什么,再做什么 如何学习面向对象 掌握一种面向对象语言的语法 熟悉面向对象的设计原则 熟悉面向对象的设计模式 类和对象的概念 课程大纲: 什么是类 类是:类别,分类 通过分类,我们可以区别不同的事物种类,日常生活中常常这样做 类是一组具有相同特性(属性)和行为(方法)的事物的集合 类和对象的关系 类表示一个共性的产物,是一个综合的特征,而对象

模块使用、面向对象介绍

模块使用 模块是Python组织代码的基本方式. 一个Python脚本可以单独运行,也可以导入到另一个脚本中运行,当脚本被导入运行时,我们将其称为模块(module). 所有的.py文件都可以作为一个模块导入 模块名与脚本的文件名相同 例如我们编写了一个名为hello.py的脚本,则可以在另一个脚本中用import hello语句来导入它. 实例:[[email protected] python]# cat add.py#!/usr/bin/pythondef addNum(x,y):retu

Python中模块使用及面向对象介绍

1.模块使用 模块: 模块式pyth1.on组织代码的基本方式 一个python脚本可以单独运行,也可以导入另一个脚本中运行,当脚本被导入运行时,我们将其称为模块(module) 所有的点p为文件都可以作为一个模块导入 模块名与脚本的文件名相同,例如我们编写了一个名为hello.pv的脚本则可以在另一个脚本中用import hello.py来导入它 包: python的模块可以按目录组织为包 创建一个包的步骤: 创建一个名字为包名字的目录,在该目录下创建一个__init__.py文件,根据需要在

面向对象介绍及运用

Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前没有接触过面向对象的编程语言,那你可能需要先了解一些面向对象语言的一些基本特征,在头脑里头形成一个基本的面向对象的概念,这样有助于你更容易的学习Python的面向对象编程. 接下来我们先来简单的了解下面向对象的一些基本特征. 面向对象技术简介 类(Class): 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共

Python中面向对向介绍及类的属性和方法

1.面向对象介绍 类和对象:是面向对象中两个重要概念 类:是对象对事物的抽象,比如人类\球类 对象:是类的一个实例,比如足球\篮球 实例说明: 球类可以对球的特征和行为进行抽象,然后可以实例化一个真实的球体出来 为什么面向对象? 面向对象的主要思想是 封装 继承 多态 这种思想方面解决较为复杂的项目,而且维护起来较为容易 Python类定义 类定义: 类把需要的变量和函数组合成一起,这种包含称为"封装", class A(object): 类的结构: class 类名 成员变量-属性

面向对象中类和类的关系

在面向对象方法中,我们在确定了类及类的属性和方法后.不可避免的要研究类和类之间的关系,正是这些关系将整个事情串联起来.使彼此之间有了联系,就像现实生活中,人与人交往中存在着不同的关系. 了解这些关系,对于我们开发系统百利而无一害,能够让我们轻松.高效的工作,相同像我们在日常生活中处理好人与人之间的关系.会给我们带来巨大的优点.那么我们就来认识一下.面向对象中类与类之间有那些关系. 类和类之间的关系大概能够分为一下几种类型:泛化关系(Generalization).实现关系(realization