xjj314 2016-08-31 08:06 采纳率: 0%
浏览 1029

static在构造器中的使用

thinking in java中的代码,我把name字符串改为了static类型,

 public final class Month{
        private static String name;
        private Month(String nm){
            name=nm;
        }
        public String toString(){
            return name;
        }
        public static final Month 
            JAN=new Month("January"),
            FEB=new Month("February"),
            MAR=new Month("March"),
            APR=new Month("April"),
            MAY=new Month("May"),
            JUN=new Month("June"),
            JUL=new Month("July"),
            AUG=new Month("August"),
            SEP=new Month("September"),
            OCT=new Month("Octber"),
            NOV=new Month("November"),
            DEC=new Month("December");
    public static final Month[] month={
        JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC
    };
    public static final Month number(int ord){
        return month[ord-1];
    }
    public static void main(String[] args){
        Month m=Month.JAN;
        System.out.println(m);
        Month n=Month.number(12);
        System.out.println(n);
        System.out.println(Month.JAN);
    }
    }

输出是
December
December
December
为什么最后一个还是输出“December”,调用构造器不是应该更改name 的值吗?
请解惑。。

  • 写回答

3条回答 默认 最新

  • 無規則 2016-08-31 08:18
    关注

    你这最后一次调用不就是 DEC=new Month("December");吗,所以静态变量的值最后被更改为了“December”;

    评论

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题