主题:【原创】这才是有中国特色的Java程序!!! -- Highway
- 共: 💬 25 🌺 8
见过没有,这样的中英混杂的Java Code。你别以为我在搞笑,可以编译运行的。由于是Console App,所以在System.out.println函数里面没有直接使用中文。
public class FunnyOne
{
public FunnyOne()
{
猫三 一个猫三 = new 猫三();
一个猫三.灌水();
一个猫三.板砖();
}
private class 猫三
{
private static final int 缺省水量 = 100;
private int 年龄;
private double 体重;
private boolean 婚否;
public 猫三()
{
年龄 = 25;
体重 = 160.0d;
婚否 = false;
}
private void 灌水()
{
灌水(缺省水量);
}
private void 灌水(int 水量)
{
System.out.println("Watering..." + 水量);
}
private void 板砖()
{
System.out.println("Throw Brick...");
}
}
public static void main(String[] args)
{
new FunnyOne();
}
}
如果你不能编译通过,那说明你Java功力尚浅,需要进一步学习。
最后再给你留一道作业题,如果我把FunnyOne名字改为中文,你能编译通过吗,How???
本帖一共被 1 帖 引用 (帖内工具实现)
不需要任何的手脚,直接编译运行就可以了。
public class 疯狂程序
{
public 疯狂程序()
{
猫三 一个猫三 = new 猫三();
一个猫三.灌水();
一个猫三.板砖();
}
private class 猫三
{
private static final int 缺省水量 = 100;
private int 年龄;
private double 体重;
private boolean 婚否;
public 猫三()
{
年龄 = 25;
体重 = 160.0d;
婚否 = false;
}
private void 灌水()
{
灌水(缺省水量);
}
private void 灌水(int 水量)
{
System.out.println("灌水...水量为:" + 水量);
}
private void 板砖()
{
System.out.println("来块板砖...");
}
}
public static void main(String[] args)
{
new 疯狂程序();
}
}
下午花了不小的气力在Server的Virtual Server 2005上安装了一个中文Windows 2000,然后在上面运行那些古怪的Java程序,出奇的顺利。从文件保存,到编译运行,没有一点障碍。TNND!!!
可以在cmd上运行.
先送朵花,再会家写作业。
我使用java1.4和英文版xp sp2,在控制台下可以直接显示汉字。现在实际上已经感觉不出来英文XP已经和中文版有什么区别了。
public class 西西猫 { public 西西猫() { 猫三 一个猫三 = new 猫三(); 一个猫三.灌水(); 一个猫三.板砖(); } private class 猫三 { private static final int 缺省水量 = 100; private int 年龄; private double 体重; private boolean 婚否; public 猫三() { 年龄 = 25; 体重 = 160.0d; 婚否 = false; } private void 灌水() { 灌水(缺省水量); } private void 灌水(int 水量) { System.out.println("Watering..." + 水量); System.out.println("灌中文水..." + 水量); } private void 板砖() { System.out.println("Throw Brick..."); System.out.println("看不懂洋文?看砖!"); } } public static void main(String[] args) { new 西西猫(); } }
一个麻烦的咚咚:
西西河的水印,也就是[cchere.com 西西河 Highway],隐藏在程序段里面,复制粘贴的时候必须逐一删除掉,不然会添乱。
我用的是Java 1.5,不知道有没有这方面的问题。我在DOS Console下,中文java class编译以后文件名字都不正确(如??.class),所以没有办法运行。
中文Windows下没有这些问题,Souce code甚至不需要用Unicode来保存。
我开始用JCrestor2.5,也有你说的无法建立中文文件名的问题,我知道那是JCrestor版本太老的缘故,它对中文兼容不好。
当我采用TxetPad4.7.1来编辑和保存中文文件时,一切都好了。TxetPad4.7.1内置了Compile Java和Run Java Application菜单,可以呼叫javac和java。
为了验证一下,我特意又试验了一下自己在英文的Console下编译和运行,结果很满意。
你的程序最后部分仍然有一句
new FunnyOne();
原文已经修改。谢谢提醒!
编译没有问题,但是编译完后发现没有class 文件产生?!
我估计是freebsd 的console对UTF8的文件名支持不好,不知道各位有什么解决方法。
我一开始也遇到了这个问题.开了DOS WINDOW,还无法打印中文
后来,在REGIONAL Setting里,选了ADVANCED,Language for Non-Unicode 设成中文,才可以.
但是假如此时文件SAVE成UNICODE,COMPILER又有许多抱怨.要SAVE
成一般ANSI文件才行