常量是 final
类常量 final static
全局常量 public final staticprivate就不用管了

解决方案 »

  1.   

    public class A{
     private String str="ddddd";//可否为static ,final等,有什么影响
     A(){} 
    }
    public class B extends A{
      private String str="eeee";
      B(){
      super();
    }
    }这样不就行了,不过这里的这个变量不要有继承上的关系,否则就不通了
      

  2.   

    每个类都可以有它自己的private属性的,它是不可以被继承的。
      

  3.   

    类B只关心类A的public和protected成员,对于private成员对B是不可见的,即使B中定义一个private的
    str也不会与A产生冲突.
      

  4.   

    但是我在Class A中要用到这个变量,而B中要修改这个值
    比如:
    public class A{
     private String str="ddddd";//可否为static ,final等,有什么影响
     A(){} 
     public void testPrint (){
       System.out.println(str);//输出ddddd
     }
    }
    public class B extends A{
      private String str="eeee";
      B(){
      super();
    }
    }
    我希望在调用B.testPrint输出eeee
    我不想在重载testPrint的方法了
    也就是b中只要修改一下字符串值就可以达到效果,其实我就是不想重载方法而是想重载变量
      

  5.   

    那你要在类A中要有一个对str赋值的方法setStr(String str)。
    在类B中调用setStr(str)把类B中的str传进去,再调用testPrint()就可以了。
    这样只是在类A中加了一个setter。
      

  6.   

    public class A{
    private String str="ddddd";//可否为static ,final等,有什么影响
                               //可以是static,但是如果你要改变str的值就不能定义为final。因为
                               //常量是不可改变的final的语意一样“最终的,不可改变的”。
     A(){} 
    }