母亲

简单粗暴地理解js原型链--js面向对象编程

∥☆過路亽.° 提交于 2020-03-11 21:51:00
简单粗暴地理解js原型链--js面向对象编程 原型链理解起来有点绕了,网上资料也是很多,每次晚上睡不着的时候总喜欢在网上找点原型链和闭包的文章看,效果极好。 不要纠结于那一堆术语了,那除了让你脑筋拧成麻花,真的不能帮你什么。简单粗暴点看原型链吧,想点与代码无关的事,比如人、妖以及人妖。 1)人是人他妈生的,妖是妖他妈生的。人和妖都是对象实例,而人他妈和妖他妈就是原型。原型也是对象,叫原型对象。 2)人他妈和人他爸啪啪啪能生出一堆人宝宝、妖他妈和妖他爸啪啪啪能生出一堆妖宝宝,啪啪啪就是构造函数,俗称造人。 3)人他妈会记录啪啪啪的信息,所以可以通过人他妈找到啪啪啪的信息,也就是说能通过原型对象找到构造函数。 4)人他妈可以生很多宝宝,但这些宝宝只有一个妈妈,这就是原型的唯一性。 5)人他妈也是由人他妈他妈生的,通过人他妈找到人他妈他妈,再通过人他妈他妈找到人他妈他妈……,这个关系叫做原型链。 6)原型链并不是无限的,当你通过人他妈一直往上找,最后发现你会发现人他妈他妈他妈……的他妈都不是人,也就是原型链最终指向null。 7)人他妈生的人会有人的样子,妖他妈生的妖会有妖的丑陋,这叫继承。 8)你继承了你妈的肤色,你妈继承了你妈他妈的肤色,你妈他妈……,这就是原型链的继承。 9)你谈对象了,她妈让你带上房产证去提货,你若没有,那她妈会问你妈有没有,你妈没有那她妈会问你妈她妈有没有…

简单粗暴地理解js原型链--js面向对象编程

寵の児 提交于 2020-03-05 07:53:53
原型链理解起来有点绕了,网上资料也是很多,每次晚上睡不着的时候总喜欢在网上找点原型链和闭包的文章看,效果极好。 不要纠结于那一堆术语了,那除了让你脑筋拧成麻花,真的不能帮你什么。简单粗暴点看原型链吧,想点与代码无关的事,比如人、妖以及人妖。 1)人是人他妈生的,妖是妖他妈生的。人和妖都是对象实例,而人他妈和妖他妈就是原型。原型也是对象,叫原型对象。 2)人他妈和人他爸啪啪啪能生出一堆人宝宝、妖他妈和妖他爸啪啪啪能生出一堆妖宝宝,啪啪啪就是构造函数,俗称造人。 3)人他妈会记录啪啪啪的信息,所以可以通过人他妈找到啪啪啪的信息,也就是说能通过原型对象找到构造函数。 4)人他妈可以生很多宝宝,但这些宝宝只有一个妈妈,这就是原型的唯一性。 5)人他妈也是由人他妈他妈生的,通过人他妈找到人他妈他妈,再通过人他妈他妈找到人他妈他妈……,这个关系叫做原型链。 6)原型链并不是无限的,当你通过人他妈一直往上找,最后发现你会发现人他妈他妈他妈……的他妈都不是人,也就是原型链最终指向null。 7)人他妈生的人会有人的样子,妖他妈生的妖会有妖的丑陋,这叫继承。 8)你继承了你妈的肤色,你妈继承了你妈他妈的肤色,你妈他妈……,这就是原型链的继承。 9)你谈对象了,她妈让你带上房产证去提货,你若没有,那她妈会问你妈有没有,你妈没有那她妈会问你妈她妈有没有……这就是原型链的向上搜索。 10

简单粗暴地理解js原型链--js面向对象编程

ぐ巨炮叔叔 提交于 2020-02-28 12:03:16
原型链理解起来有点绕了,网上资料也是很多,每次晚上睡不着的时候总喜欢在网上找点原型链和闭包的文章看,效果极好。 不要纠结于那一堆术语了,那除了让你脑筋拧成麻花,真的不能帮你什么。简单粗暴点看原型链吧,想点与代码无关的事,比如人、妖以及人妖。 1)人是人他妈生的,妖是妖他妈生的。人和妖都是对象实例,而人他妈和妖他妈就是原型。原型也是对象,叫原型对象。 2)人他妈和人他爸啪啪啪能生出一堆人宝宝、妖他妈和妖他爸啪啪啪能生出一堆妖宝宝,啪啪啪就是构造函数,俗称造人。 3)人他妈会记录啪啪啪的信息,所以可以通过人他妈找到啪啪啪的信息,也就是说能通过原型对象找到构造函数。 4)人他妈可以生很多宝宝,但这些宝宝只有一个妈妈,这就是原型的唯一性。 5)人他妈也是由人他妈他妈生的,通过人他妈找到人他妈他妈,再通过人他妈他妈找到人他妈他妈……,这个关系叫做原型链。 6)原型链并不是无限的,当你通过人他妈一直往上找,最后发现你会发现人他妈他妈他妈……的他妈都不是人,也就是原型链最终指向null。 7)人他妈生的人会有人的样子,妖他妈生的妖会有妖的丑陋,这叫继承。 8)你继承了你妈的肤色,你妈继承了你妈他妈的肤色,你妈他妈……,这就是原型链的继承。 9)你没有家,那你家指的就是你妈家;你妈也没有家,那你家指的就是你妈他妈家……这就是原型链的向上搜索。 10)你会继承你妈的样子,但是你也可以去染发洗剪吹

学习笔记——python(继承)

主宰稳场 提交于 2020-02-27 01:30:12
学习笔记(Python继承) 有几种叫法(父类-子类、基类-派生类) 先拿代码演示一下: 1 class father: 2 def work(self): 3 print("work>>>>>") 4 5 def car(self): 6 print("car>>>>>>>>>") 7 8 class son(father): #想要继承就得添加父类 9 def study(self): 10 print("study>>>>>>>>>>") 11 12 obj = son() 13 obj.work() #在上面方法中,work中的self是形参,此时指向的是obj 14 #除此之外还很重要的是,self永远指向调用方法的调用者(比如这里指向obj) 15 #work>>>>> 由上述代码可以看出此时obj是调用子类的对象,但是却可以使用父类的方法,其主要原因是子类后添加了父类,如果没有加父类,则调用不了父类的方法从而报错,这种形式叫做继承 (self 永远指向调用方法的调用者) 1、当继承父类的方法时,如果不想调用父类的某些方法,则就需要自己在子类中重写 (下面类中重写父类中的work方法,先别去想太多限制) 1 class son(father): 2 def study(self): 3 print("study>>>>>>>>>>") 4 5 def work(self

Django 中related_name,\"%(app_label)s_%(class)s_related\"

瘦欲@ 提交于 2019-12-29 17:19:09
先看个model 1 from django.db import models 2 3 # Create your models here. 4 5 6 class Parent(models.Model): 7 name = models.CharField(max_length=64, verbose_name=u'姓名') 8 id_num = models.BigIntegerField(verbose_name=u'身份证号', unique=True) 9 10 def __str__(self): 11 return self.name 12 13 class Meta: 14 verbose_name = u'父亲' 15 verbose_name_plural = u'父亲' 16 17 18 class Mother(models.Model): 19 name = models.CharField(max_length=64, verbose_name=u'姓名') 20 id_num = models.BigIntegerField(verbose_name=u'身份证号', unique=True) 21 22 def __str__(self): 23 return self.name 24 25 class Meta: 26 verbose_name

继承与多态

半世苍凉 提交于 2019-12-18 21:29:15
继承 单继承 继承的语法 子类继承自父类,可以直接获得父类中的方法和属性 #创建爷爷类 class grandF ( object ) : def __init__ ( self ) : print ( "grandF被调用!" ) self . name = "grandfather" def test ( self ) : print ( "test:" , self . name ) #创建父亲类 class father ( grandF ) : def __init__ ( self ) : print ( "father is here now!" ) self . name = "father" print ( "创建爷爷类:" ) g = grandF ( ) g . test ( ) >> > 创建爷爷类: >> > grandF被调用! >> > test : grandfather print ( "创建父亲类:" ) f = father ( ) f . test ( ) >> > 创建父亲类: >> > father is here now! >> > test : father 注:父亲类并没有创建test类,其继承自爷爷类 方法重写 重写有两种情况: 子类覆盖父类方法 子类扩展父类方法 现在定义mother类,继承自grandF,但重写test方法

Mysql按条件计数的几种方法

£可爱£侵袭症+ 提交于 2019-12-17 14:46:14
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 最近在给喜乐喜乐网的后台添加一系列的统计功能,遇到很多需要按条件计数的情况。尝试了几种方法,下面简要记录,供大家参考。 问题描述 为使讨论简单易懂,我将问题稍作简化,去掉诸多的背景。 从前有一个皇帝,他有50个妃子,这些妃子很没有天理的给他生了100,000个儿子,于是,皇帝很苦恼,海量的儿子很难管理,而且,他想知道每个妃子给他生了多少个儿子,从而论功行赏,这很难办。于是,皇帝请了一个程序员帮他编了一个程序,用数据库来存储所有的儿子的信息,这样就可以用程序来统计和管理啦。 数据库的结构如下: id 皇子的唯一编号 mother 皇子母亲的唯一编号 皇帝把妃子分成了两个等级,天宫娘娘(编号小于25)和地宫娘娘(编号大于等于25),他想知道天宫娘娘们和地宫娘娘们的生育能力孰强孰弱。于是,程序员开始写SQL Query了。 方法1:使用GROUP BY SQL Query SELECT COUNT(*) FROM `prince` GROUP BY `mother` > 24; 执行结果 count(*) 50029 49971 在100,000行数据上的运行时间:0.0335 秒 分析 这种GROUP BY方法的最大问题在于:无法区分所得到的结果。这两个数字哪一个是天宫娘娘们所生的皇子数

How to manage security with One2many fields in Odoo?

匿名 (未验证) 提交于 2019-12-03 01:03:01
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I have a doubt about security groups in Odoo 8, I will show a simple example to make it more understandable: I have created two new models, Mother and Child . The relationship between them is that a mother can have several children, but a child will only have one mother. Therefore, we have an One2many field pointing to Child (named child_ids ) in Mother , and a Many2one pointing to Mother (named mother_id ) in Child . Now, I have an user who can create some children, but not mothers. When he creates a child, he will only be able to select

Mother's Mil 母亲的牛奶

匿名 (未验证) 提交于 2019-12-02 22:56:40
版权声明:转载时 别忘了注明出处 https://blog.csdn.net/ZCY19990813/article/details/82900183 Description 农民约翰有三个容量分别是A,B,C升的桶,A,B,C分别是三个从1到20的整数,最初,A和B桶都是空的,而C桶是装满牛奶的。有时,约翰把牛奶从一个桶倒到另一个桶中,直到被灌桶装满或原桶空了。当然每一次灌注都是完全的。由于节约,牛奶不会有丢失。 写一个程序去帮助约翰找出当A桶是空的时候,C桶中牛奶所剩量的所有可能性。 Input 单独的一行包括三个整数A,B和C。 Output 只有一行,列出当A桶是空的时候,C桶牛奶所剩量的所有可能性。 Sample Input 8 9 10 Sample Output 1 2 8 9 10 倒牛奶,无外乎就六种倒法,a->b , a->c , b->a , b->c , c->a , c->b ,只需要对这六种情况不断搜索就可以了,结束条件就是如果这种情况搜过了,就不需要再搜了,就return,然后有满足条件的就记录下来。 #include <algorithm> #include <iostream> #include <cstdio> #include <cstring> #include <string> #include <cmath> #include

设计模式六大原则

浪子不回头ぞ 提交于 2019-11-27 18:36:10
单一职责原则( Single Responsibility Principle ) 定义: 不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 问题由来: 类 T 负责两个不同的职责:职责 P1 ,职责 P2 。当由于职责 P1 需求发生改变而需要修改类 T 时,有可能会导致原本运行正常的职责 P2 功能发生故障。 解决方案: 遵循单一职责原则。分别建立两个类 T1 、 T2 ,使 T1 完成职责 P1 功能, T2 完成职责 P2 功能。这样,当修改类 T1 时,不会使职责 P2 发生故障风险;同理,当修改 T2 时,也不会使职责 P1 发生故障风险。 说到单一职责原则,很多人都会不屑一顾。因为它太简单了。稍有经验的程序员即使从来没有读过设计模式、从来没有听说过单一职责原则,在设计软件时也会自觉的遵守这一重要原则,因为这是常识。在软件编程中,谁也不希望因为修改了一个功能导致其他的功能发生故障。而避免出现这一问题的方法便是遵循单一职责原则。虽然单一职责原则如此简单,并且被认为是常识,但是即便是经验丰富的程序员写出的程序,也会有违背这一原则的代码存在。为什么会出现这种现象呢?因为有职责扩散。 所谓职责扩散,就是因为某种原因,职责 P 被分化为粒度更细的职责 P1 和 P2 。 比如:类 T 只负责一个职责 P ,这样设计是符合单一职责原则的。后来由于某种原因