码迷,mamicode.com
首页 > 其他好文 > 详细

2018/10/21动手动脑

时间:2018-11-13 02:47:17      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:imp   equals   对象   com   height   system.in   手动   count   scanner   

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

代码:

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动手动脑

标签:imp   equals   对象   com   height   system.in   手动   count   scanner   

原文地址:https://www.cnblogs.com/0518liu/p/9949632.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!