Python 面向对象程序设计
类的设计
方法优先的原则, 在__init__方法中创建出需要的属性, 对于基类来说, 只进行默认值得初始化, 0, None等, 对于真正需要使用的子类, __init__方法则是进行我们需要的初始化, 不在基类中进行初始化就与Java中的构造方法不能继承是一样的了, 要在子类中初始化所有的属性, 还可以提供方便的代码提示(在PyCharm中)
属于类的属性称之为类成员变量, 对于类成员的初始化, 如果简单的初始化则直接赋值, 如果是复杂的初始化就采用函数方式, 此方法类似于Java中的静态代码块, 用于加载图片音乐
等静态资源在第一点中提到了基类, 该基类不能直接拿来用, 但是在Python有没有Java中的接口或者抽象类, 在编译的时候就会报错, 在Python中要解决这个问题可以通过命名的方法人为的判断, 使用形容或者Base开头的类表示不要直接使用该类
对于常量, 定义一个专门的类来存放常量, 将常量作为静态的属性(大写), 或者直接定义在模块中

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
网站流量统计实现在原理
1.如何统计停留时间 具体参考“客户统计”相关程序。大致说来,一般有3个表:日表,月表,年表 日表基本设计:IP,进来时间,离开时间,目前时间,停留页面,客户ID(如果登陆),SESSIONID等等 客户访问页面,查询日表有数据没有(SESSIONID),有就更新目前时间和停留页面,没有就新建 判断客户离开时间,可以在前台用JS实现。可以预先定义目前时间和真实时间差多少为离线 年表和月表实际是统计用表,每天使用计划任务按照规则分类统计日表数据 2.有的统计只有一个图片也能实现是什么原理? 实际不是一个图片!!而是一个统计程序(写日表的),最后返回一个图片而已!!!3.网站热力图又是怎么实现? 这个,一般使用AJAX实现即时存储。AJAX监视鼠标点击事件,有点击行为发生,传输到后台处理(鼠标坐标,点击文字等等)4.比如站长统计只是引入了一个PHP文件,是如何统计出分辨率这些东西的呢? JAVASCRIPT有专门的函数取屏幕分辨率的。只是最后通过AJAX传回后台处理!
-
下一篇
C++雾中风景12:聊聊C++中的Mutex,以及拯救生产力的Boost
笔者近期在工作之中编程实现一个Cache结构的封装,需要使用到C++之中的互斥量Mutex,于是花了一些时间进行了调研。(结果对C++标准库很是绝望....)最终还是通过利用了Boost库的shared_mutex解决了问题。借这个机会来聊聊在C++之中的多线程编程的一些“坑”。 1.C++多线程编程的困扰 C++从11开始在标准库之中引入了线程库来进行多线程编程,在之前的版本需要依托操作系统本身提供的线程库来进行多线程的编程。(其实本身就是在标准库之上对底层的操作系统多线程API统一进行了封装,笔者本科时进行操作系统实验是就是使用的pthread或来进行多线程编程的)提供了统一的多线程固然是好事,但是标准库给的支持实在是有限,具体实践起来还是让人挺困扰的: C++本身的STL并不是线程安全的。所以缺少了类似与Java并发库所提供的一些高性能的线程安全的数据结构。(Doug Lea大神亲自操刀完成的并发编程库,让JDK5成为Java之中里程碑式的版本) 如果没有线程安全的数据结构,退而求其次,可以自己利用互斥量Mutex来实现。C++的标准库支持如下的互斥量的实现: 互斥量 版本 作用...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2全家桶,快速入门学习开发网站教程
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- MySQL数据库在高并发下的优化方案