java 基础 之 第三章 初始化

1.1 java类初始化
    初始化一个类对象是通过构造器,但是用户可能想要在一个类中创建不同的对象,所以这就要多建构造器方法。即用到了java的重载,在这里提一下方法重载,即方法名一样,参数类型或者参数个数不同就成为java的方法重载。方法重载是可以改变返回值类型的,但是一般人用方法重载时很少去关注这个。默认构造器是无参的。
    在这里有个问题,构造器能够互相调用吗?答案是可以的,这就用到了java中的一个关键字:this。
例如:
    public class Test{
        public String name;
        public String password;
     public Test(String name){
            this.name = name;}
     public Test(String password){
            this.password = password;}
     public Test(String name,String password){
          this(name);
          this.password=password;}
     }

   这里编写了三个构造方法,第三个中引用了第一个构造方法,而没有引用第二个,而是直接用this.password = password;语句,那是因为一个构造方法中只能用一个this引用构造方法,而且请记住必须放在开始位置。
  this还有一个用处就是指当前对象。
  public class Leaf{
     int i=0;
    Leaf increment(){
     i++;
    return this;}
  void print(){
    System.out.println("i="+i);
  }
  public static void main(String args[]){
    Leaf x = new Leaf();

     x.increment().increment().increment().print();
   }
  在这里increment方法返回的就是当前对象就x。
  this关键词是对当前对象而用,也就是对对象而用,java中与之对应的是static关键字,该关键是是针对类,而不是对象,有人理解为全局变量。static方法不用通过对象调用,而是直接使用,当然在使用时也是有限制的,在static方法中不能调用非静态方法,而反过来是可以的。7

 

你可能感兴趣的:(java 基础 之 第三章 初始化)