黑马程序员技术交流社区
标题: 小知识总结 [打印本页]
作者: 淡定哥 时间: 2013-5-26 14:46
标题: 小知识总结
在多态中成员函数的特点:
在编译时期,参阅引用类型变量所属类中是否有调用方法,如果有,编译通过,如果没有,编译失败!
在运行时期,参阅对象所属的类中是否有调用方法
总结:成员函数在多态调用时,编译看左边,运行看右边
在多态中成员变量的特点:无论编译还是运行,都参考左边(引用型变量的所属类)
在多态中,静态成员函数的特点:
无论编译还是运行,都参考左边
匿名内部类:
1. 匿名内部类其实就是内部类的简写形式
2. 定义匿名内部类的前提:内部类必须实现一个类或者接口
3. 匿名内部类的格式:new 父类或接口(){定义子类的内容}
4. 其实匿名内部类就是一个匿名子类的对象,只是这个对象有点大,可以理解为带内容的对象
5. 匿名内部类中定义的方法最好不要超过三个
延时加载的单例设计模式的实例:
懒汉式:
classSingle{
private staticSingle s=null;
privateSingle(){
}
public static Single getInstance(){
if(s==null){
synchronized(Single.class){
if(s==null){
s=newSingle();
}
}
}
return s;
}
}
饿汉式
classSingle{
private static finalsingle s=new Single();
privateSingle(){
}
public static Single getInstance(){
return s;
}
}
装饰类(装饰设计模式):装饰设计模式比继承要灵活。避免了继承体系的臃肿。装饰类因为增强了已有对象,所以具备的功能和已有是相同的,只不过提供了更强的功能。所以装饰类和被装饰类通常都是属于一个体系中的。
增强for循环
语法:
for(type 变量名:集合变量名 )
{ … }
注意事项:
1.迭代变量必须在( )中定义!
2.集合变量可以是数组或实现了Iterable接口的集合类。
举例:
public static int add(int x,int ...args)
{
int sum = x;
for(int arg:args)
{
sum += arg;
}
return sum;
}
public static int add(int x,int ...args)
{
int sum = x;
for(int arg:args)
{
sum += arg;
}
return sum;
}
作者: 张旺达 时间: 2013-5-26 14:55
我一看就知道是总结的老毕视频里的代码~ 字里行间都透露着老毕的感觉啊{:soso_e128:}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |