Java面向对象3——this 和static

来源:互联网 发布:我当方士那些年 知乎 编辑:程序博客网 时间:2024/09/21 09:03
  1. this
    在类方法定义中使用this关键字代表使用该方法的对象的引用。
    当必须指出当前使用方法的对象是谁时要使用this。
    有时使用this可以处理方法中成员变量和参数重名的情况。
    this可以看作是一个变量,它的值是对当前对象的引用。
public class Leaf{    int i;    Leaf(int i){        this.i=i;    }    Leaf increament(){//返回值是Leaf类型的        i++;        return this;    }    void print(){ System.out.println("i="+ i);}    public static void main(String[] args){        Leaf leaf = new Leaf(100);        leaf.increament().increament().print();    }}

2 . 列表内容

  • 在类中,用static声明的成员变量为静态成员变量,它为该类的公用变量,在第一次使用时被初始化,对于该类的所有对象来说,static成员变量只有一份。

  • 用static声明的方法为静态方法,在调用该方法时,不会将对象的引用传递给它,所以在static方法中不可访问非static的成员(静态方法不再是针对于某个对象调用,所以不能访问非静态成员),必须先new一个对象后再调用。

  • 可以通过对象引用或类名(不需要实例化)访问静态成员,如 类名.静态变量对象.静态变量
public class Cat{    private static int sid = 0;    private String name;    int id;    Cat (String name){        this.name = name;        id = sid++;    }    public void info(){        System.out.println("My name is "+name+"No."+id);    }    public static void main(String[] args){        Cat.sid = 100;        Cat mimi = new Cat("mimi");        Cat pipi = new Cat("pipi");        mimi.info();        pipi.info();    }}

这里写图片描述

0 0
原创粉丝点击