代码如下:import java.lang.*;
//import java.lang.StringBuffer;public class StringBuffer { public static void main(String[] args) {
  
  //例子二,StringBuffer的使用方法;
  //将字符串abcdef变为下列结果输出:abcdEFG,AbCdEfG,gfedcba;
  StringBuffer str5 = new StringBuffer("aaaaa");
  str5. //这后面打点后不出StringBuffer的方法了,为什么?
                 //比如replace,append等。     
}
}

解决方案 »

  1.   

    应该是eclipse出问题了,或是当前不是java项目....
      

  2.   

    这个跟程序没有关系吧。
    你是不是所有的 . 都不能提示?!
    如果是的话试试设置一下:
    Window -> Preferences -> java -> Content Assist
    然后在 Auto Active triggers for java 的文本框里填上 "."(不要双引号)
      

  3.   

    因为你的class叫StringBuffer!这种情况下,你必须java.lang.StringBuffer str5 = new java.lang.StringBuffer("aaaaa");
      

  4.   

    shine333(enihs)正解,但这是为什么呢?应该如何包含头文件进来呢?这个例子之前用String类的数据,都可以正确引出substring,replace等方法的。
      

  5.   

    就是每次用到StringBuffer的时候,都要给出全路径。shine333(enihs)上面提到过的那样。
      

  6.   

    名字相同的类会产生覆盖.这就是为什么
    java.util.date 
    java.sql.date
    在导入的时候最好使用全限定名.
      

  7.   

    假如你的名字叫比尔·布什,那么人家和你说话的时候,就必须分清楚是U.S. President G.W.Bush还是你,B.Bush(当然,美国人直接叫名字,而不是姓)同样,你的class叫StringBuffer,在这个class里,即使import了,你在出现类型StringBuffer这12个字母的时候,仍然是你的class优先度高于java.lang.StringBuffer,所以,以后命名Class的时候尽量不要用这种常用的class
      

  8.   

    那shine333(enihs) 的意思是我的class叫StringBuffer,将java.lang.StringBuffer的定义覆盖了。但是在这个例子之前我用String来定义变量,为什么系统就认识呢?或者我的Eclipse的什么地方要设置一下?多谢解答。