黑马程序员——第三篇_知识点整理
2015-07-23 19:27
465 查看
------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
1.string可以看做是char的只读数组,例如:可以遍历string中的每一个元素
2.C#中字符串有一个重要的特性:不可变性,字符串一旦声明就不再可以改变,所以只能
索引来读取指定为指定位置的char,不能对指定位置的char进行修改
3.如果要对char进行修改,就要创建一个新的字符串,用s.ToCharArray()方法得到字符串
的数组,对数组进行修改后,调用new string(char[])这个构造函数来创建char数组的字符串。
一旦字符串被创建,那么char数组的修改液不会造成字符串变化:例如:将字符串中的A换成a
4.一切类型都可以调用.ToString()方法转换成字符串类型
5.String类常用的方法
注意点:字符串是不可变的,所以这些函数都不会直接改变字符串的内容,而是把修改后的字符串通过
返回值的形式返回。s.ToLower()与s=s.ToLower()
ToLower():得到字符串的小写形式
ToUpper();得到字符串的大写形式:
Trim();去掉字符串两端的空白
s1.Equals(s2,StringComparison.OrdinallGnoreCase),两个字符进行比较不区分大小写
6.字符串的分割
string[] Split(params char[] separator)字符串按照指定的分割符分割为字符串数组;
string[] Split(char[] separator,StringSplitOptions ooptions)将字符串按照指定的char分割字符串数组
(options去RemoveEmptyEntries的时候移除结果中的空白字符串)
7.字符串替换:string Repalce(string oldvalue,string,newValue);将字符串中的出现oldValue的地方替换为newValue
例子:名字替换。
8.取子字符串:string SubString(int startindex),取从位置startindex开始一直到最后的子字符串;
string Substring(int startindex,int length),取从位置startindex开始长度为length的子字符串,如果子字符串不足length长度
则报错
9.bool Contains(string value)判断字符串中是否含有子串value
bool StartsWith(string value)判断字符串是否以字串value开始;
bool EndsWith(string value)判断字符串是否以字串value结束;
int indexof(string value): 取字串value第一次出现的位置
int indexof(string value,int startindex)取字串从startindex位置起第一个value的位置
10类型转换
is type A is type B仅判断
type A as type B 先判断,再转换
子类可以自动转父类,父类转子类要通过强转,为了不出错,可以先通过is判断或用as转换
11.多态-隐藏基类方法与多态的实现
子类可以有与父类方法名相同的方法
签名不同(重载)
签名相同(隐藏基类方法)
子类可以重写父类方法
虚方法
重写方法
重写基类方法一样可以调用基类方法
多态就是对象可以表现多个类型的能力
抽象类与抽象方法由abstract修饰
如果类中的方法加上了abstract,那么这个方法叫抽象方法,同时这个方法所在的类也必须用abstract修饰
那么这个类变成抽象类了
abstract的使用注意
抽象方法没有方法体
抽象成员只能位于抽象类中
抽象类中可以有非抽象成员
抽象类的派生类必须实现抽象方法体
抽象类只能用作基类,不能被实例化
重写:不同对象对于同一个方法调用的不同行为(指不同对象收到相同消息时,会产生不同行为)
12.多态-小结
用父类实现多态
用抽象类实现多态
用接口实现多态
版本控制 要保留基类方法使用new关键字
需要重写方法时使用override关键字
13.接口
完全抽象的一种约定
接口就是用来实现的
[访问修饰符] interface 接口名
{
//接口成员定义
}
接口只有方法,属性,索引和事件的声明
接口是用来实现的,所有成员默认public
14.接口的实现
接口的实现类似于继承
接口是“多继承”
由于多继承,无法保证方法重名问题
可以显示实现接口的成员
<接口名>.方法名(){//方法体}
显示实现的接口成员必须有接口对象来调用
15.类与成员的修饰符大汇总
public internal abstract sealed static
成员(方法)
public private protected internal
protected internal
abstract ,virtual new override
static
extern() //表示方法可以定义在内部实现在外部
16.ArrayList和HashTable
为什么要用到ArrayList(List)和HashTable(字典Dictionary)
ArrayList元素的增加,插入,删除,清空,排序,反转
HashTable的增,删,查,判存。
foreach(知道实现leumerable接口)
17.索引器
为了方便将类,结构或接口当做数组来使用
索引器用于封装内部集合或数组
定义语法
[访问修饰符]返回类型 this[索引类型 索引名]
{
get或set方法
}
索引器本质就是属性
利用索引可以用key得到项,亦可用项得到序号
18.装箱与拆箱
将值类型赋值给引用类型
对于值类型中的引用成员,保留数据
效率问题
19.泛型集合
List<T>
Directory<Tkey,Tvalue>
默认提供命名空间,提倡使用
20.泛型类
List<T>类对比ArrayList类来学习
Dictoinary<Tkey,Tvalue>类对比HashTable类学习
1.string可以看做是char的只读数组,例如:可以遍历string中的每一个元素
2.C#中字符串有一个重要的特性:不可变性,字符串一旦声明就不再可以改变,所以只能
索引来读取指定为指定位置的char,不能对指定位置的char进行修改
3.如果要对char进行修改,就要创建一个新的字符串,用s.ToCharArray()方法得到字符串
的数组,对数组进行修改后,调用new string(char[])这个构造函数来创建char数组的字符串。
一旦字符串被创建,那么char数组的修改液不会造成字符串变化:例如:将字符串中的A换成a
4.一切类型都可以调用.ToString()方法转换成字符串类型
5.String类常用的方法
注意点:字符串是不可变的,所以这些函数都不会直接改变字符串的内容,而是把修改后的字符串通过
返回值的形式返回。s.ToLower()与s=s.ToLower()
ToLower():得到字符串的小写形式
ToUpper();得到字符串的大写形式:
Trim();去掉字符串两端的空白
s1.Equals(s2,StringComparison.OrdinallGnoreCase),两个字符进行比较不区分大小写
6.字符串的分割
string[] Split(params char[] separator)字符串按照指定的分割符分割为字符串数组;
string[] Split(char[] separator,StringSplitOptions ooptions)将字符串按照指定的char分割字符串数组
(options去RemoveEmptyEntries的时候移除结果中的空白字符串)
7.字符串替换:string Repalce(string oldvalue,string,newValue);将字符串中的出现oldValue的地方替换为newValue
例子:名字替换。
8.取子字符串:string SubString(int startindex),取从位置startindex开始一直到最后的子字符串;
string Substring(int startindex,int length),取从位置startindex开始长度为length的子字符串,如果子字符串不足length长度
则报错
9.bool Contains(string value)判断字符串中是否含有子串value
bool StartsWith(string value)判断字符串是否以字串value开始;
bool EndsWith(string value)判断字符串是否以字串value结束;
int indexof(string value): 取字串value第一次出现的位置
int indexof(string value,int startindex)取字串从startindex位置起第一个value的位置
10类型转换
is type A is type B仅判断
type A as type B 先判断,再转换
子类可以自动转父类,父类转子类要通过强转,为了不出错,可以先通过is判断或用as转换
11.多态-隐藏基类方法与多态的实现
子类可以有与父类方法名相同的方法
签名不同(重载)
签名相同(隐藏基类方法)
子类可以重写父类方法
虚方法
重写方法
重写基类方法一样可以调用基类方法
多态就是对象可以表现多个类型的能力
抽象类与抽象方法由abstract修饰
如果类中的方法加上了abstract,那么这个方法叫抽象方法,同时这个方法所在的类也必须用abstract修饰
那么这个类变成抽象类了
abstract的使用注意
抽象方法没有方法体
抽象成员只能位于抽象类中
抽象类中可以有非抽象成员
抽象类的派生类必须实现抽象方法体
抽象类只能用作基类,不能被实例化
重写:不同对象对于同一个方法调用的不同行为(指不同对象收到相同消息时,会产生不同行为)
12.多态-小结
用父类实现多态
用抽象类实现多态
用接口实现多态
版本控制 要保留基类方法使用new关键字
需要重写方法时使用override关键字
13.接口
完全抽象的一种约定
接口就是用来实现的
[访问修饰符] interface 接口名
{
//接口成员定义
}
接口只有方法,属性,索引和事件的声明
接口是用来实现的,所有成员默认public
14.接口的实现
接口的实现类似于继承
接口是“多继承”
由于多继承,无法保证方法重名问题
可以显示实现接口的成员
<接口名>.方法名(){//方法体}
显示实现的接口成员必须有接口对象来调用
15.类与成员的修饰符大汇总
public internal abstract sealed static
成员(方法)
public private protected internal
protected internal
abstract ,virtual new override
static
extern() //表示方法可以定义在内部实现在外部
16.ArrayList和HashTable
为什么要用到ArrayList(List)和HashTable(字典Dictionary)
ArrayList元素的增加,插入,删除,清空,排序,反转
HashTable的增,删,查,判存。
foreach(知道实现leumerable接口)
17.索引器
为了方便将类,结构或接口当做数组来使用
索引器用于封装内部集合或数组
定义语法
[访问修饰符]返回类型 this[索引类型 索引名]
{
get或set方法
}
索引器本质就是属性
利用索引可以用key得到项,亦可用项得到序号
18.装箱与拆箱
将值类型赋值给引用类型
对于值类型中的引用成员,保留数据
效率问题
19.泛型集合
List<T>
Directory<Tkey,Tvalue>
默认提供命名空间,提倡使用
20.泛型类
List<T>类对比ArrayList类来学习
Dictoinary<Tkey,Tvalue>类对比HashTable类学习
相关文章推荐
- 转自:浅谈软件开发人员的职业规划
- 面试题连接收集
- 转自:熊译:我看软件工程师的职业规划。
- 115个Java面试题和答案——终极列表
- ***JAVA多线程和并发基础面试问答
- 黑马程序员——Java多态总结
- 职场发展中气度的养成(节选自最代码7月第2周回顾)
- 女程序员之路
- 一颗合格的螺丝钉——程序员漫谈(一)
- 程序员必读的六本书
- 黑马程序员——多线程(一)
- 二叉树中的那些常见的面试题(转)
- 剑指offer-面试题11.数值的整数次方
- 让你在求职中脱颖而出的小技巧
- 程序员装逼速成手册
- 面试题7:用两个栈实现队列和用两个队列实现栈
- 面试题:“你能不能谈谈,java GC是在什么时候,对什么东西,做了什么事情?”
- android技术 面试题 笔试题精华重点
- 剑指offer-面试题10:二进制中1的个数
- 面试:归并排序