继承和组合的缺点
带默认实现的协议
小结继承和组合的缺点在开发工作中,继承总是用来在多个类之间共享代码。
设想一个场景,一个人类,可以说话和睡觉,而一个Worker,除了上述功能,还可以工作。
解决方案很简单,我们可以 Person 和 Worker 之间建立继承关系:class Person {
func say() {
print("hello")
}...
分类:
编程语言 时间:
2016-05-12 19:37:42
阅读次数:
570
mysql有几种索引类型?
一、普通索引
这是最基本的索引,它没有任何限制。它有以下几种创建方式:
二、唯一索引
它与前面的普通索引类似,不同的就是:索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。它有以下几种创建方式:
三、主键索引
它是一种特殊的唯一索引,不允许有空值。一般是在建表的时候同时创建主键索引:
索...
分类:
数据库 时间:
2016-05-12 18:53:43
阅读次数:
208
下一篇 内部类
设计模式是一套被反复使用,多数人知晓的,经过分类编目的,代码设计经验的总结。
我一直以为设计模式很难,很高大上,从现在开始,我来浅谈对java23种设计模式的理解。
总体来说设计模式分为三大类:
创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模...
分类:
其他好文 时间:
2016-05-12 18:41:48
阅读次数:
130
Problem Description
开学了,杭电又迎来了好多新生。ACMer想为新生准备一个节目。来报名要表演节目的人很多,多达N个,但是只需要从这N个人中选M个就够了,一共有多少种选择方法?Input
数据的第一行包括一个正整数T,接下来有T组数据,每组数据占一行。
每组数据包含两个整数N(来报名的人数,1<=N<=30),M(节目需要的人数0<=M<=30)Output
每组数据输出...
分类:
其他好文 时间:
2016-05-12 18:37:57
阅读次数:
122
接着上一篇博客,这一次我们初步了解一些MySQL数据库中的约束。
六自动编号
AUTO_INCREMENT
自动编号的字段,必须与主键组合使用。默认情况下,起始值为1,每次的增量为1。
例子:
CREATE TABLE tb3(
id SMALLINT UNSIGNED AUTO_INCREM...
分类:
数据库 时间:
2016-05-12 18:33:50
阅读次数:
202
1.匿名组合Go语言也提供了继承,但是采用了组合的方式,所以我们将其称为匿名组合:package main
import "fmt"//定义基类
type Base struct {
Name string
}
//基类相关的2个成员方法
func (base *Base) A() {
fmt.Println("Base method A called...")
}
func (...
分类:
编程语言 时间:
2016-05-12 18:06:59
阅读次数:
159
什么是UML类图?
以前学设计模式的时候一直迷迷糊糊,在画类图时经常分不清各种形状的线条之间的区别,到底依赖和关联有什么区别,聚合和组合又是什么鬼,今天学习之后终于真正了解,通过现实中的例子来解释区分它们
类与类之间的关系
类与类之间的关系可以根据关系的强度依次分为以下五种:
依赖关系(Dependency)---关联关系(Assoc...
分类:
其他好文 时间:
2016-05-12 17:55:50
阅读次数:
231
如果在一个app中有大量的相似的布局条目时,可以考虑自定义组合控件,当然也可以使用include标签。本人认为在一定程度上认为include标签比自定义组合控件要简单。自定义组合控件不仅要继承控件或者继承布局,而且要重写一些涉及到的方法,有时候还要自定义属性文件,必要的时候还要自定义方法,达到java文件中控制子控件的属性。如果控制不好,自定义组件就会出现莫名其妙的错误,比如自定义组合控件实例化失...
分类:
移动开发 时间:
2016-05-12 17:26:34
阅读次数:
216
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1105
题意a序列和b序列,ab序列是 a和b两两组合,问你ab中第k大是多少。。
这题是个二分套二分,是个二分好题。。为什么好呢,因为这个二分容易写残疾啊。。。(总之就是我太弱了
接下来分析一下这个题的解法和要注意的地方。
一个显然的方法就是二分答...
分类:
其他好文 时间:
2016-05-12 17:07:12
阅读次数:
158
在开发EBS的合同报表打印的时候需要将小写金额转换为大写。
如下是本人自己写的转换函数。
主要思路:先获取小数点位置,在区分整数与小数点处理,根据位数和数字组合读取金额。
最后再处理特殊显示部分。
/*******************************************************************
* FUNCTION get...
分类:
数据库 时间:
2016-05-12 16:46:57
阅读次数:
283