关于类的调用次数,大体使用静态变量来实现。

代码:

package yds;

import java.util.Scanner;

class Number{
static int sum;
public Number(){
sum++;
}
int Sum(){
return sum;
}
}
public class duixiangsum {
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
Number a=new Number();
Number b=new Number();
Number c=new Number();
System.out.println("你已经创建了"+Number.sum+"个对象");
System.out.println("是否继续创建(是,请输入yes,否则输入no)\n");
String flag;
flag=scan.next();
duixiangsum dt=new duixiangsum();
dt.Count(flag);
}
public void Count(String flag){
Scanner scan=new Scanner(System.in);
duixiangsum dt=new duixiangsum();
if(flag.equals("yes")){
Number a=new Number();
System.out.println("你已经创建了"+Number.sum+"个对象");
System.out.println("是否继续创建(是,请输入yes,否则输入no)\n");
flag=scan.next();
dt.Count(flag);
}else{
if(flag.equals("no")){
System.out.println("创建结束");
System.out.println("共创建了"+Number.sum+"个对象");}
}
}
}

附,结果截图

2018/10/21动手动脑

 因为在类的构造函数被修改之后,初始化对象只调用修改后的函数,所以对象未被初始化,应该加上函数的参数,这样对象才会被初始化。

静态初始化块的执行顺序:

静态初始化块最优先被执行,而且只能够执行一次。构造函数在其之后执行,而且没生成一次对象就调用构造函数一次。
非静态初始化块构造函数之前被执行。构造函数就是将对象初始化。

相关文章:

  • 2021-09-02
  • 2021-12-01
  • 2021-07-17
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-05-07
  • 2021-12-18
  • 2021-12-18
  • 2021-12-18
  • 2021-12-10
相关资源
相似解决方案