第五章.初始化与清理 this static 构造器

1.导读

  • 不要在代码中调用gc,因为没调用一次gc,java虚拟机就会在不定的时间执行一遍清理工作,而在这个过程中,所有的线程都必须暂停,等待清理线程执行完毕。
  • java中也向c++一样引入了构造器的概念,并额外提供了“垃圾回收器”。对于不再使用的内存资源卖垃圾回收器能将其自动释放。

2.构造器

  • java 用构造器来保证对象的初始化。
  • 构造器的命名与类名相同。
  • 当new一个对象时,将会对对象分配存储空间,并调用相应的构造器。确保在操作对象之前,它已经被恰当的初始化。
  • 默认构造器;不接受任何参数的构造器。
  • 构造器不会返回任何东西,void还会默认返回一个null,但构造器是真的什么都不返回。

3.this关键字

  • Banana a = new Banana();
                   b = new Banana();
                   a.pell(1);
                   b.pell(2);
    只有一个pell方法,它如何知道是被a调用还是被b调用的?
    为了能简单的、面向对象的语法来编写代码——即“发送消息给对象”,编译器做了一些幕后工作,。它暗自把“所操作对象的引用”作为
    第一个参数传递给pell().
    Banana.pell(a,1);
    Banana.pell(a,2);就变成了这样。这是内部的表示。
  • 假设你想在方法内获得传递的这个引用,但这个引用有时编译器“内部”传递的。所以没有任何表示符可用,所以就有了this这个关键字。这个关键字即代表这个传递进来的引用。
    也就是说this代表“调用方法的那个对象”的引用。this的用法和其他对象的引用并无不同。
  • 也可理解为对当前对象的引用。
  • 使用this关键字可以实现在构造器中调用构造器
    public class test {
    
    	public test() {
    		this(1);
    	}
    	public test(int type){
    		
    	}
    }
    

4.static

  • 静态方法,static方法就是没有this的方法。在static内部不能调用非静态的方法,反过来可以。
  • 可以不初始化对象,仅仅通过类本身来调用静态方法。
  • java中禁止使用全局方法,但可以在勒种植入static方法就可以访问其他static方法和域。






















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值