python“对象”的初印象

2018-07-24  本文已影响0人  Heavy_Dream

自定义数据定义类型

class Author:

def __init__(self,username,password):
    self.username = username
    self.password = password

数据(存储)定义类型

class DataDefined:

def __init__(self):
    a1 = Author("admin","admin")
    self.authors = {"admin",a1}

def get_data(self):
    return self.authors

数据服务类型

class AuthorService:

def __init__(self):
    self.data = DataDefined()
    self.authors = self.data.get_data()

def login(self):
    """用户登录"""
    #输入账号+密码
    #判断:self.authors进行判断是否成功

def register(self):
    """用户注册"""
    #输入账号+密码
    #存储:self.authors

界面类型层

class Menus:

def __init__(self):
    self.author_service = AuthorService()

def show_login(self):
    print("展示登陆界面")
    choice = input("输入选项:")

    if choice == "1":
        #用户登录
        res = self.author_service.login()
        if res:
            #展示首页
            return self.show_index()
        else:
            return self.show_login()

def show_index(self):
    pass

程序启动的地方

menus = Menus()
menus.show_login()

界面类型层 -> 服务类型层 ->数据(存储)定义层->自定义数据类型层

Menus() -> AuthorService() ->DataDefined() ->Author()

#################

自定义数据类型层向数据定义层过渡需要有存储的过程

数据库中的数据(数据自定义层) -> 数据读写(存储)->保险箱(数据定义层)->服务类型人员(服务类型层)->大堂经理(界面类型层)

1.什么是面向对象?
对面向过程编程的补充和完善,通过对象和对象之间的交互协作完成项目功能的开发
2.什么是类和对象?
①类型:代码中可以通过class关键字,自定义一个数据类型
(1)数据类型:简称类型:简称类-> 自定义数据类型-> 自定义 类
(2)基本语法:

                            class 类型名称:
                             类型中的代码

(3)类型名称命名规范:见名知意、驼峰命名法[一个或者多个英文单词组成、每个单词首字母大写]
(4)类型:通过项目中需要的大量有相似特征和行为的对象,抽象出来的一个数据类型
②对象:
对象:有具体特征和行为操作的事物
代码:有具体(特征)属性和(行为)方法的对象-> “事物”
生活:类型和事物
类型是事物抽象出来的一个称呼/概念
事物是属于某种类型的一个具体存在的物体
3.类和对象的区别?
类型:通过对象抽象出来的一个数据类型
类型中需要定义对象需要的特征[属性|变量]和行为[方法]
class Person:

        # 定义属性、特征
        # 固定写法:在__init__方法中,定义类型的属性
        def __init__(self, name, age, gender):
            self.name = name
            self.age = age
            self.gender = gender

        # 定义方法、行为
        def eat(self, food):
            print("吃饭了")

    注意1:class 关键字,用来声明定义一个类型,固定写法
    注意2:类型中的所有函数,第一个参数self表示当前对象,类似生活中的一个名词:我
    注意3:类型中的函数,必须称为方法;
            函数 和 方法 : 两个东西
                方法是一种特殊的函数,只能在类型中使用!
    注意4:类型中方法,第一个参数:指代的是当前对象~~~一般被声明为self
            表示当前对象,调用的时候不需要传递数据给self!
对象:某种类型一个具体存在的事物
    代码中的对象,需要通过类型来创建
    如:tom = Person('汤姆', 18, '男')

    通过 类型名称() 的方式创建对象
        创建对象时,自动调用执行__init__()方法,将对象需要的数据传递过去

    有了对象,就可以执行对象的行为:调用对象的方法
    通过 对象的变量.方法()直接调用
    如:tom.eat("鱼香肉丝")    tom:变量,存储了Person()对象的内存地址
        --对象的引用变量【变量中存放的是可以引用到对象的内存地址】

自己理解:先定义一个类,然后定义对象的属性、特征,接下来定义对象的行为。创建对象(需要将对象得到属性数据传进来),通过“对象.方法()”的方式来直接调用.
整个流程:
①声明定义类型
②初始化类型属性
③定义类型的方法
④对象的创建、属性的调用、方法的调用

上一篇下一篇

猜你喜欢

热点阅读