java学习-成员那块的题

class Test{
   static int x=10;
   int y=99;
   {
      y=y+10;
   }
   static {
      x=x+5;
   }
   {
      y=y+10;
   }
   static {
      x=x+5;
   }
   public Test() {//构造方法
      x=x+5;
   }
   {
      System.out.println(x*y);
   }
}
public class a {
   public static void main(String[] args) {
      Test t1=new Test();
      Test t2=new Test();
   }
}

输出结果
2380
2975
调用构造方法前先从上向下执行代码块。静态代码块仅仅加载一次,普通代码块的执行次数与调用构造方法的次数相同。

t1
x是静态成员变量,加载一次static,x=15
在Text()中x=20
y为普通,为119
20x119=2380
t2
x(此时x=15)是静态成员变量,加载一次static,x=20
在Text()中x=25
y为普通,为119
25x119=2975

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值