首页 > 编程语言 >Python学习的自我理解和想法(20)

Python学习的自我理解和想法(20)

时间:2024-10-23 22:48:56浏览次数:3  
标签:调用 20 Python 自我 多态 私有 设计模式 方法 属性

#1024程序员节|征文#

学的是b站的课程(千锋教育),跟老师写程序,不是自创的代码!

今天是学Python的第20天,学的内容是面向对象中的私有属性,私有方法,多态,单例计模式。开学了,时间不多,写得不多,见谅。

目录

1.私有属性

(1).含义

(2).语法

(3).演示

(4).调用私有属性

2.私有方法

(1).含义

(2).语法

(3).演示

(4).调用私有方法

 3.两者总结

(1).私有属性

(2).私有方法

4.多态

(1).含义

(2).定义

(3).简单的调用

(4).总结

(5).严格定义多态的体现

5.单例设计模式

(1).设计模式

(2).单例的含义

(3).应用场景

(4).实现

(1).创建对象

(2).创建一个类属性,接收创建的对象

(3).调用

总结 


1.私有属性

(1).含义

私密的,不能在类的外部轻易地访问的属性.

(2).语法

在普通属性的前面加 _ _(两个短下划线)

(3).演示

其他类属性可以从外部被访问到

私有属性不能从外部访问到.

(4).调用私有属性

写一段代码定义一个接口(多为if语句),可以访问私有属性. 

2.私有方法

(1).含义

私有方法是类中的函数,不能直接被外部调用.

(2).语法

def  _ _方法名:

(3).演示

不能从外部调用私有方法.

(4).调用私有方法

和私有属性一样,编写一段接口.


 3.两者总结

(1).私有属性

        1.格式:只在属性的前面加_ _   比如: _ _age.

        2.用法:只能在类的内部访问,不能在类的外部访问.可以在类的内部设置一个对外开放的接口,(这个接口一般会设置各种条件判断,满足后才能访问).主要用于私密信息.

(2).私有方法

        1.格式:在方法的前面加__     比如:__kiss().

        2.用法:只能在类的内部访问,不能在类的外部直接访问. 私有方法一般用于在类的内部实现某些功能,对于外部来说没有实际意义.

4.多态

(1).含义

一种实物的多种体现形式,函数的重写就是多态的一种体现,在面向对象中的多态,指的是父类的引用指向子类的对象.

(2).定义

注意划线的符号

(3).简单的调用

(4).总结

1.在父类和子类中出现了函数重名的情况,会调用子类的函数.

2.子类和父类函数重名的情况就叫重载或重写. 不同的子类之间调用和父类方法名一样的方法,调用的都是自己的方法,这就是多态的一种体现.

(5).严格定义多态的体现

 按照语法写的就是用哪个的多态调用.

自我理解:不同的位置调用同名的函数获得不同的结果,就是多态.

5.单例设计模式

(1).设计模式

经过多次的实验,总结出的解决一些特殊问题的方案.叫做设计模式 常见的设计模式有23种,比如:单例设计模式\工厂设计模式\门面设计模式\代理设计模式\装饰设计模式等等

(2).单例的含义

单个实验对象.在程序运行的过程中,确保某一类只有一个实例[对象],不管在哪个模块中获取对象,获取到的都是同一个对象.

(3).应用场景

数据库的连接操作等

(4).实现

(1).创建对象

(2).创建一个类属性,接收创建的对象

注意缩进!!!

(3).调用

使用布尔运算证明结果.

总结 

这是我今天学Python的自我想法和对其的理解,有不对的地方请同志们多多包涵,谢谢观看!

标签:调用,20,Python,自我,多态,私有,设计模式,方法,属性
From: https://blog.csdn.net/Pocker_Spades_A/article/details/143166577

相关文章

  • 20241022_095024 c语言 字符串的方法
    源始字符串strlen方法strcat方法strcpy方法strcmp方法大小写转换......
  • 20241022_105024 c语言 模拟用户登陆
    需求代码......
  • 20222318 2024-2025-1 《网络与系统攻防技术》实验二实验报告
    1.实验内容(一)本周课程内容(1)深入理解后门概念及其实际案例,明晰后门对系统安全构成的潜在威胁。(2)普及后门技术知识,涵盖各类进程隐藏技巧,并熟悉netcat、meterpreter、veil等常见工具的应用。(3)进一步学习了shellcode注入的逻辑原理及其在不同场景下的应用。(二)实验目标(1)使用net......
  • P7074 [CSP-J2020] 方格取数 题解
    动态规划dp方格取数类似于数字三角形,均可以使用动态规划直接秒杀.但此题有$3$个方向:上、右、下.所以可以定义一个三维数组dp数组.假设$f_{i,j,1}$是从右、上方到达$(i,j)$的和的最大值.又有$f_{i,j,0}$是从右、下方到达$(i,j)$的和的最大值.我们可以先确定......
  • P7912 [CSP-J 2021] 小熊的果篮 题解
    是模拟吗?其实是的,虽然$1\len\le2\times10^5$,但是队列是个好东西.我们定义一个结构体,来存放每一个块的信息,包括类型、起点、终点,将它们放入队列当中,再使用基于广搜的思想,先处理,再合并,所以需要用到$2$个队列.注意点数据中可能会有块的类型全是$1$,或者全是$0$的情况......
  • 12306抢票-python
    写了一整天,代码设置起始站,终点站,出行日期,通过爬虫从12306爬取选择当日的车票信息,保存在csv文件中,随后通过邮箱将包含车次信息的csv文件发送到个人邮箱账号,个人阅读后回发一个邮件,期间包含车次信息,电脑进入邮箱读取邮件,获得所选车次,进行自动化订票,期间需要输入一次验证码,目前是......
  • P7071 [CSP-J2020] 优秀的拆分 题解
    二进制"优秀的拆分"如果存在,则代表$n$的二进制最低位不是$1$.$\because2^0=1$$\therefore$当$n$的二进制最低位为$1$时,不存在优秀的拆分.即$n$不是奇数.上述条件判断完后,就可以从$2$的$30$次方开始模拟(int的上限是$2^{31}-1$).代码#include<iostream>......
  • P7072 [CSP-J2020] 直播获奖 题解
    暴力使用$\Theta(n^2)$的时间复杂度来解决这题大约能拿到$60pts$.即枚举$p$,再枚举每个选手的分数.正解桶是个好东西.我们开一个桶,记录当前分数有多少人.然后计算获奖人数,分数从大到小进行枚举,直到当前人数$\ge$获奖人数.代码#include<iostream>#include<cstdio>#i......
  • LeetCode|3184. 构成整天的下标对数目 I(day20)
    作者:MJ昊博客:掘金、CSDN等公众号:程序猿的编程之路今天是昊的算法之路第20天,今天分享的是LeetCode第3184题构成整天的下标对数目I的解题思路。这是一道简单难度的题目,考察的是数组元素之间的组合与模运算。题目描述简要回顾给定一个整数数组hours,求满足(hours[i]+......
  • [CSP-J2020] 表达式 题解
    短路这道题目中所含的运算符只有3个:与、或、非.在与运算和或运算中有2个性质.进行与运算时,若其中有一个值为0,则这个运算的结果就为0,即无需判断另1个数是否是0或1.进行或运算时,若其中有一个值为1,则这个运算的结果就为1,也无需判断另一个数是否是0或1.表达式树根据短路的性......