想不通为什么能编译通过,中文的类名跟本不符合JAVA标识符定义,但我试了可以编译但不能运行。

解决方案 »

  1.   

    中国人当然要学会怎么在java中用中文
      

  2.   

    有意思,问问sun怎么解决,呵呵
      

  3.   

    你真行,中国人是不是应该将windows用中文字符实现一遍?哈哈,我看你应该去看病。
      

  4.   

    真没人知道?这里到底有没有真的对java精通的?
      

  5.   

    hehe..
    我也曾经有过一次这样的经历:在linux机器上用jdbc向oracle数据库插入记录时,当记录中有中文“性”就插入不成功。
      

  6.   

    “性”就插入不成功。???问题严重,别问SUN怎么解决了,去医院看看吧
      

  7.   

    可能是编译时的字符集问题:
    试试
    javac -encoding UTF-8 旅馆.java
    在试试unicode,gbk,bg2312等字符集试试。
    祝你好运~
      

  8.   

    UTF-8
    unicode
    编译不通过GBK
    gb2312
    编译通过,还是无法执行
      

  9.   

    关注此问题,如果成功,java就拥有全世界了!!
      

  10.   

    执行的时候类名输入旅馆的utf8编码(鏃呴)可以执行成功$>javac 旅馆.java
    $>java -cp . 鏃呴旅馆.javaclass 公民 {
    public int 房间;
    class 证件 {
    String 姓名;
    public int 年龄;
    public boolean 是否成人() {
    if (年龄 >= 18) {
    return true;
    }
    return false;
    }
    public 证件(String 姓名, int 年龄) {
    this.姓名 = 姓名;
    this.年龄 = 年龄;
    }
    }
    证件 身份证;
    public 公民(String 姓名, int 年龄) {
    身份证 = new 证件(姓名, 年龄);
    }
    }public class 旅馆 {
            private static class 前台{
             private static int 门牌;
             protected static int 得到钥匙(公民 公民) {
    if (公民.身份证.是否成人()) {
    return 门牌++;
    }
    return 0;
    }
            }
    public static void 开房(公民 公民) {
    if (公民.房间 > 0) {
    System.out.println(公民.身份证.姓名+"的房间号码是"+公民.房间);
    } else {
    System.out.println(公民.身份证.姓名+"未成年人,不许开房!");
    }
    }        public static void main(String[] 营业) {
    公民 小明 = new 公民("小明", 19);
    公民 小芳 = new 公民("小芳", 17);
    前台.门牌 = 1; 小明.房间 = 前台.得到钥匙(小明);
    小芳.房间 = 前台.得到钥匙(小芳);
    开房(小明);
    开房(小芳);
    }
    }
      

  11.   

    怎么用utf8? 我的操作系统是2000。
      

  12.   

    问题解决,原来后面还有一个空格,
    这样子编程,真的很有趣!!!!
    guoyichao(guoyichao) 很又创意呦:)
      

  13.   

    变态:编不过去!!提示错误如下:旅馆.java:25: No variable 身份证 defined in class 公民.
                if (公民.身份证.是否成人()) {
                      ^
    旅馆.java:33: No variable 身份证 defined in class 公民.
                System.out.println(公民.身份证.姓名+"的房间号码是"+公民.房间);
                                     ^
    旅馆.java:35: No variable 身份证 defined in class 公民.
                System.out.println(公民.身份证.姓名+"未成年人,不许开房!");
                                     ^
    3 errors