java 面向对象 this 构造函数 垃圾回收

来源:互联网 发布:有网络无法连接服务器 编辑:程序博客网 时间:2024/06/16 02:34
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class Test {
        private  int age ;
        private String name;
        
        public void shout() {
          System.out.println("年龄"+age);  
          }
    
       public int getAge() {
          return age;
        }


        public String getName() {
          return name;
        }


        public void setAge(int age) {
          if(age < 0)
            return;
          this.age = age;
          
            
        }
        
        public void finalize() {
          System.out.println("垃圾回收");
        }


        public void setName(String name) {
          this.name = name;
        }


      public Test() {
         
      }
       
       public Test(int age) {
         this.age = age;
       }
        
       public Test(int age,String name) {
         /*this.age = age;*/
         this(age);//调用 Test(int age) 构造方法
         this.name = name;
       }
       
       public void getSomeOne(Test t){
         System.out.println("getSomeOne");
          t.shout();
       }
       
       public void fun1(){
         System.out.println(name);
       }
       
       public void fun2(){
         Test a2 = new Test(70, "李四");
         a2.fun1();
         fun1();
         System.out.println(this.name);
       }
        
      public static void main(String[] args) {
        Test t1 = new Test();
        Test t2 = new Test(10, "李四");
        Test t3 = new Test(20, "张三");
        t2.setAge(-10);
        t1.shout();
        t2.getSomeOne(t1);//T2访问t1的成员变量
        t1.fun2();
        System.out.println(t1.age+t1.name+"   "+t2.age+t2.name+"    "+t3.age+t3.name);
        new Test();
        new Test();
        new Test();
        System.gc();
      }
     

}


打印结果:

年龄0
getSomeOne
年龄0
李四
null
null
0null   10李四    20张三
垃圾回收
垃圾回收
垃圾回收
垃圾回收

0 0
原创粉丝点击