实例化

Python 面向对象

烂漫一生 提交于 2019-12-12 10:54:44
0. OOP-Python面向对象 Python的面向对象 面向对象编程 基础 公有私有 继承 组合,Mixin 魔法函数 魔法函数概述 构造类魔法函数 运算类魔法函数 1. 面向对象概述(ObjectOriented,OO) OOP思想 接触到任意一个任务,首先想到的是任务这个世界的构成,是由模型构成的 几个名词 OO:面向对象 OOA:面向对象的分析 OOD:面向对象的设计 OOI:xxx的实现 OOP:xxx的编程 OOA->OOD->OOI: 面向对象的实现过程 类和对象的概念 类:抽象名词,代表一个集合,共性的事物 对象:具象的事物,单个个体 类跟对象的关系 一个具象,代表一类事物的某一个个体 一个是抽象,代表的是一大类事物 类中的内容,应该具有两个内容 表明事物的特征,叫做属性(变量) 表明事物功能或动作, 称为成员方法(函数) 2. 类的基本实现 类的命名 遵守变量命名的规范 大驼峰(由一个或者多个单词构成,每个单词首字母大写,单词跟单词直接相连) 尽量避开跟系统命名相似的命名 你如何声明一个类 必须用class关键字 类由属性和方法构成,其他不允许出现 成员属性定义可以直接使用变量赋值,如果没有纸,许使用None 案例 01.py 实例化类 变量 = 类名() #实例化了一个对象 访问对象成员 使用点操作符 obj.成员属性名称 obj.成员方法

PHP进阶学习之依赖注入与Ioc容器详解

一曲冷凌霜 提交于 2019-12-12 08:56:26
背景 在很多编程语言(例如java)开发中,程序员在某个类中需要依赖其它类的方法,则通常是new一个依赖类再调用类实例的方法,这种开发存在的问题是new的类实例不好统一管理,一旦有修改,牵扯的类会很多。 最早在java的spring提出了依赖注入的思想,即依赖类不由程序员实例化,而是通过spring容器帮我们new指定实例并且将实例注入到需要该对象的类中。目前许多主流PHP框架也使用了依赖注入容器,如ThinkPHP、Laravel等。 一、概念 1、容器:字面上理解就是装东西的东西。常见的变量、对象属性等都可以算是容器。一个容器能够装什么,全部取决于你对该容器的定义。当然,现在我们讨论的是这样一种容器,它存放的不是文本、数值,而是对象、对象的描述(类、接口)或者是提供对象的回调(闭包),通过这种容器,我们得以实现许多高级的功能,其中最常提到的,就是 “解耦”、“依赖注入”。 2、IoC - Inversion of Control 控制反转 控制反转是从容器的角度在描述,即:容器控制应用程序,由容器反向的向应用程序注入应用程序所需要的外部资源。 3、DI - Dependency Injection 依赖注入 依赖注入是从应用程序的角度在描述,可以把依赖注入,即:应用程序依赖容器创建并注入它所需要的外部资源。 备注:依赖注入和控制反转说的是同一个东西,是一种设计模式

讲讲类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字段,当 new 的时候, 他们的执行顺序

余生长醉 提交于 2019-12-11 23:12:26
父类静态变量、 父类静态代码块、 子类静态变量、 子类静态代码块、 父类非静态变量(父类实例成员变量)、 父类构造函数、 子类非静态变量(子类实例成员变量)、 子类构造函数。 详情参考 https://blog.csdn.net/xybelieve1990/article/details/48678603 来源: CSDN 作者: 一路风情 链接: https://blog.csdn.net/qq_33280890/article/details/103499036

好程序员大数据实用教程之面向对象进阶

别等时光非礼了梦想. 提交于 2019-12-11 15:20:31
好程序员大数据实用教程之面向对象进阶:包的创建与使用 是对一个程序中指定功能的部分代码进行包装 ####构造方法 是一个方法 特殊点: 构造方法没有返回值,不是指的返回值类型是void,而是根本就不写返回值类型 方法名字和类名相同 构造方法不能用static来修饰 构造方法调用的时机: 通俗来讲:是在实例化一个对象的时候调用的 一般情况下,我们在构造方法中做什么: 对对象的某一些属性进行初始化赋值操作 实例化对象的过程: Person xiaoming = new Person(); new : 表示在堆上开辟空间 执行非静态代码段 然后再执行构造方法: 在构造方法中调用其他的构造方法 可以使用this()的方式来调用其他的构造方法 注意事项: this() 必须写在构造方法的第一行 不能循环调用 无参构造方法需要注意的问题 如果一个类中没有写构造方法,此时这个类具有一个默认的public权限的无参构造方法 如果一个类中写构造方法了,此时这个默认的public权限的无参构造方法将不再提供 代码块 非静态代码段 静态代码段 static { } // 当这个类第一次被加载到内存中的时候执行 // 当你第一次使用这个类的时候执行(实例化对象、调用静态方法...) private关键字与属性封装 是一种编程思想: 狭义上的封装: ​ 一个类中的某一些属性,我们不希望外界直接访问。

好程序员大数据实用教程之面向对象进阶

随声附和 提交于 2019-12-11 15:07:32
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 好程序员大数据实用教程之面向对象进阶:包的创建与使用 是对一个程序中指定功能的部分代码进行包装 构造方法 是一个方法 特殊点: 构造方法没有返回值,不是指的返回值类型是void,而是根本就不写返回值类型 方法名字和类名相同 构造方法不能用static来修饰 构造方法调用的时机: 通俗来讲:是在实例化一个对象的时候调用的 一般情况下,我们在构造方法中做什么: 对对象的某一些属性进行初始化赋值操作 实例化对象的过程: Person xiaoming = new Person(); new : 表示在堆上开辟空间 执行非静态代码段 然后再执行构造方法: 在构造方法中调用其他的构造方法 可以使用this()的方式来调用其他的构造方法 注意事项: this() 必须写在构造方法的第一行 不能循环调用 无参构造方法需要注意的问题 如果一个类中没有写构造方法,此时这个类具有一个默认的public权限的无参构造方法 如果一个类中写构造方法了,此时这个默认的public权限的无参构造方法将不再提供 代码块 非静态代码段 静态代码段 static { } // 当这个类第一次被加载到内存中的时候执行 // 当你第一次使用这个类的时候执行(实例化对象、调用静态方法...) private关键字与属性封装 是一种编程思想:

遍历实例化swiper

别等时光非礼了梦想. 提交于 2019-12-11 10:48:49
var list = $('.p04-s2 li'); list.each(function (index) { new Swiper ($(this).find('.swiper-container'), { spaceBetween: 10, slidesPerView : 3, watchOverflow: true, centeredSlides : true, loop: true, breakpoints: { 1500: { slidesPerView: 2 }, 1200: { slidesPerView: 1 } }, pagination: { el: $(this).find('.swiper-pagination'), clickable :true }, navigation: { prevEl: $(this).find('.prev-btn'), nextEl: $(this).find('.next-btn'), } }); }); 来源: https://www.cnblogs.com/gduf/p/12021039.html

单例模式

ぐ巨炮叔叔 提交于 2019-12-10 22:45:43
定义: 单例模式 (Singleton Pattern)属于创建型模式,提供了一种创建对象的最佳方式。 单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点 实现方式 :“饿汉式” and “懒汉式”    “饿汉式” :在类加载的时候就实例化对象,通俗来说就是:不管这个对象你要不要用,我都先实例化出来,要用的时候直接取就行 “懒汉式” :也就是我们常说的 延迟加载 。通俗来说就是:只要你要用这个对象,我才去实例化这个对象,然后在取来用 通过定义我们就知道这两种方式的差异了,“饿汉式”在不采取同步的方式的时候就是线程安全的,而“懒汉汉”则需要采取同步的措施来保证线程安全,当然也可以不采取同步的措施,例如采用枚举类来实现单例模式,这个接下来细说。 优点:    1、在内存里只有一个实例,减少了内存的开销,尤其是频繁的创建和销毁实例。 2、避免对资源的多重占用(比如写文件操作)。 缺点: 没有接口,不能继承,与单一职责原则冲突,一个类应该只关心内部逻辑,而不关心外面怎么样来实例化。 具体实现 : 也就是上代码啦!!! 1、“饿汉式” 1 // 饿汉式 demo1 2 public class Singleton1 { 3 4 // 必须私有化构造函数 5 private Singleton1(){} 6 7 // 先初始化对象 8 private static

08: vue组件

允我心安 提交于 2019-12-09 12:06:25
1.1 初识组件   1、什么是组件       1. Html中有组件,是一段可以被复用的结构代码       2. Css中有组件,是一段可以被复用的样式       3. Js中有组件,是一段可以被复用的功能       4. Vue中也有组件,指的就是一个模块,是一个独立的,完整的(包含html,css,js等),可以直接拿来用的   2、使用组件分成三步     1、第一步 定义组件容器 (定义自定义元素)     2、第二步 定义组件Vue.extend方法         1. 参数是组件对象,对象属性跟vue实例化时候传递的参数对象的属性是一样的,例如 data,methods,computed         2. 在vue实例化时候,data属性的属性值是一个对象,在组件中,data属性值是一个函数,返回值是一个对象         3. 组件中,可以通过template定义模板,通常模板写在一个根元素内     3、第三步 将组件注册到页面中 Vue.component         第一个参数表示容器元素的名称         第二个参数表示组件类   3、组件特性         1. 组件的实例化对象,跟vue实例化对象一样,因此,我们也可以将vue实例化对象看成组件         2. 组件间是独立的,因此数据要独立存储,方法要独立定义

PHP中this,self,parent的区别

让人想犯罪 __ 提交于 2019-12-09 10:02:07
{一}PHP中this,self,parent的区别之一this篇 面向对象编程(OOP,Object OrientedProgramming)现已经成为编程人员的一项基本技能。利用OOP的思想进行PHP的高级编程,对于提高PHP编程能力和规划web开发构架都是很有意义的。 PHP5经过重写后,对OOP的支持额有了很大的飞跃,成为了具备了大部分面向对象语言的特性的语言,比PHP4有了很多的面向对象的特性。这里我主要谈的是 this,self,parent 三个关键字之间的区别。从字面上来理解,分别是指 这、自己、父亲 。先初步解释一下, this是指向当前对象的指针 (可以看成C里面的指针), self是指向当前类的指针 , parent是指向父类的指针 。我们这里频繁使用 指针 来描述,是因为没有更好的语言来表达。关于指针的概念,大家可以去参考百科。 下面我们就根据实际的例子结合来讲讲。 <?php classname //建立了一个名为name的类 { private$name; //定义属性,私有 //定义构造函数,用于初始化赋值 function __construct( $name ) { $this->name =$name; //这里已经使用了this指针语句① } //析构函数 function __destruct(){} //打印用户名成员函数 function

PHP中this,self,parent的区别

北慕城南 提交于 2019-12-09 10:01:53
{一}PHP中this,self,parent的区别之一this篇 面向对象编程(OOP,Object OrientedProgramming)现已经成为编程人员的一项基本技能。利用OOP的思想进行PHP的高级编程,对于提高PHP编程能力和规划web开发构架都是很有意义的。 PHP5经过重写后,对OOP的支持额有了很大的飞跃,成为了具备了大部分面向对象语言的特性的语言,比PHP4有了很多的面向对象的特性。这里我主要谈的是 this,self,parent 三个关键字之间的区别。从字面上来理解,分别是指 这、自己、父亲 。先初步解释一下, this是指向当前对象的指针 (可以看成C里面的指针), self是指向当前类的指针 , parent是指向父类的指针 。我们这里频繁使用 指针 来描述,是因为没有更好的语言来表达。关于指针的概念,大家可以去参考百科。 下面我们就根据实际的例子结合来讲讲。 <?php classname //建立了一个名为name的类 { private$name; //定义属性,私有 //定义构造函数,用于初始化赋值 function __construct( $name ) { $this->name =$name; // 这里已经使用了this指针语句① } //析构函数 function __destruct(){} //打印用户名成员函数