黑马程序员技术交流社区

标题: 小知识总结 [打印本页]

作者: 淡定哥    时间: 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