软件测试之this和static关键字

来源:    作者:笔名    2019-09-11

  来源:东方头条 日期: 11:01:0 导读:一、this(1)代表当前对象的引用。使用的时候,谁调用方法,this就代表谁。(2)什么时候使用this呢?A:当局部 一、this

  (1)代表当前对象的引用。使用的时候,谁调用方法,this就代表谁。

  (2)什么时候使用this呢?

  A:当局部变量和成员变量重名的时候,可以用this进行区分。

  B:this调用成员方法

  C:构造函数中使用this

  **this() 必须放在第一行。

  同下面的道理:

  Person(String name){

  = name;

  }

  Person(String name,int age){

  this("张三");

  = name;

  e = age;

  }

  Person p = new Person("lisi",20);

  二、static关键字

  (1)静态的意思。可以修饰类的成员(成员变量和成员方法);

  (2)静态成员的特点:

  A:随着类的加载而加载,随着类的消失而消失,生命周期最长。

  B:优先于对象存在。

  C:被所有的对象所共享。

  D:比非静态成员多了一种访问方式。可以通过类名直接调用。建议用类名.调用

  ( )什么时候需要使用static修饰呢?

  当类中的成员需要被所有对象共享时,用static修饰。不需要被共享时,就不用static修饰。

  简单说:共性用static修饰,特性不用static修饰。

  (4)注意事项

  A:静态方法只能访问静态成员的。

  B:静态方法中不能使用this,super关键字。

  C:main是静态的。

  **格式如下:

  public static void main(String[] args){//new String[0]

  }

  ***由于它被jvm调用,所以权限要足够大,所以用public权限修饰符。

  ***为了jvm可以不用创建对象直接调用它,所以用static修饰。

  ***void jvm不需要任何返回。但是方法体结尾默认有return;

  ***main jvm只认识这个名字。

  ***String[] 有可能需要传入参数。

  ***args 字符串数组的名字,只要符合标识符的命名规则可以随便起

  面试题

  public class Test{

  private static int i=1;

  public int getNext() {

  return i++;

  }

  public static void main(String[]args) {

  Test test = new Test();

  Test testObject = new Test();

  tNext();

  tNext();

  tNext();

  intln(tNext());

  }

  }

  对于使用static关键字修饰的变量来说,该变量是属于类本身的,不属于特定的某个类对象。因此new出的两个对象test和testObject是对同一个变量i进行的操作。对于i++来说,是先引用再自加;对于++i来说是先自加,再引用。程序段中调用了4次getNext()方法,根据先引用再自加的原则,最后打印出4。

  (:)

安康最好的男科专科医院
苏州好的医院治男科
拉萨专治妇科医院
您可能感兴趣的内容: