`
wdt1988520
  • 浏览: 14366 次
社区版块
存档分类
最新评论

Java基础知识

阅读更多

java的方法

           1、方法的名字和参数的列表称为方法的签名,例如f(int)\f(String)是相同的方法名不同的签名,方法的返回值不属于签名的一部分,所以在子类覆盖超类方法的时候允许返回类型定义为原返回类型的子类型(java se5.0 以后)。

 

           2、虚拟机在寻找类方法匹配时,会加载类的时候会创建一个类的方法列表。

 

           3、java 接口中的方法自动声明为public,接口中的域自动声明为public static final

 

 

内部类分为:一般内部类、局部内部类、匿名内部类、静态内部类

 

 

 

一般内部类的具体实现过程:  

 

  //大狗肚里有只小狗
    public  class  Dog{
        private String name;
 
        private boolean isMale;
 
        public void bite{
          //咬
        }
 
        public Dog();
 
        private  class  LittleDog{//只有内部类能声明为private
 
           public Dog  dog
           //内部类创建原理及调用外部属性方法
           public LittleDog(Dog dog){
              this.dog=dog;
     //下面可以调用dog的任意属性方法
           }          
        }
    
    } 

 

  

 

局部内部类就是声明在方法内部的类,不能声明为public和private。

局部内部类:

  

 public void start(){
        final int x=0;//被应用
 
        class Dog{
          public void add(int y){
              x=x+y;//局部内部类引用局部变量应该声明为final;
          }
        }
   }

 

 

 

匿名内部类因为没有类名,所也不能有构造方法,调用超类构造器构造。

 

public class Dog{
 
   //监听小偷的匿名内部类
   StealListener  listener=new StealListener{
          public void  bite(){}
   }
}

 

静态内部类,只有内部类能声明为static,静态内部类不能引用外部内的任何属性和方法。\

 

泛型是指定方法返回类型和域类型或变量类型。泛型不能实例化变量,比如 new T(..),T.class   泛型的静态上下文中类型变量无效,如:private static T singleTon (这样是错的)

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics