您的位置:首页 > 编程语言 > Java开发

java基础知识--回收站和接口

2013-09-17 23:14 417 查看
一、回收站
 垃圾回收是一个优先级比较低的线程,只有在内存不足时才被系统自动调用回收(频繁运行,反而会影响效率)
localhost:test LiBo$ cat Garbage.java
class Garbage
{
     int index;
     static int count;
     Garbage()
     {
          count++;
          System.out.println("object "+count+" construnct");
          setID(count);
     }
     void setID(int id)
     {
          index=id;
     }
     protected void finalize()
     {    
         
          System.out.println("object "+count+" reclaimed");
     }
     public static void main(String[] agrs)
     {
          new Garbage();
          new Garbage();
          new Garbage();
          new Garbage();
     }
}

localhost:test LiBo$ java Garbage
object 1 construnct
object 2 construnct
object 3 construnct
object 4 construnct

调用System.gc() 强制进行垃圾回收:

localhost:test LiBo$ java Garbage
object 1 construnct
object 2 construnct
object 3 construnct
object 4 construnct
object 4 reclaimed
object 4 reclaimed
object 4 reclaimed
object 4 reclaimed
localhost:test LiBo$ cat Garbage.java
class Garbage
{
     int index;
     static int count;
     Garbage()
     {
          count++;
          System.out.println("object "+count+" construnct");
          setID(count);
     }
     void setID(int id)
     {
          index=id;
     }
     protected void finalize()
     {    
         
          System.out.println("object "+count+" reclaimed");
     }
     public static void main(String[] agrs)
     {

          new Garbage();
          new Garbage();
          new Garbage();
          new Garbage();
          System.gc();
     }
}

二、接口
接口中所有的方法都是抽象类
在接口中声明方法时,不能使用native static final synchronized private protected等修饰符
和public 类一样,public 接口也必须定义与接口同名的文件中

localhost:test LiBo$ java  Athlete
短跑
三级跳
localhost:test LiBo$ cat Sport.java
interface Sport
{
      void jump();
      void run();
}
class Athlete implements Sport
{
     public void jump()
     {
          System.out.println("短跑");
     }
     public void run()
     {    
          System.out.println("三级跳");
     }

     public static void main(String[] args)
     {
          Athlete libo=new Athlete(); 
          libo.jump();
          libo.run();    
         
     }
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java class