现在很多公司都需要.NET程序员,方向大多数是ASP.NET 。
至于C/S开发模式的,招收的不是很多。
很多用这个.
1. 问:怎样用 Win95 的记事本 (Notepad) 来编辑 Java源程序?
答:记得存档时扩展名要加上".java",文件类型改成:“所有的文件(*.*)”。
2. 问:到底 Java 是如何传递参数的?是by value或by reference?
答:All parameters (values of primitive types, and values that are references to objects) are passed by value [JLS sect 8.4.1]。根据以上 Java规格文件的说法, 所有参数应该都是传值的(by value)。但实际上, 实际经验却告诉我们所有 Java 的对象都是传址的(by reference)。因此我们可以这样解释: 基本类型(如int, float, char等)是by value,而所谓“对象”(Object)则是by value of reference to object。
3. 问:String这个类型的class为何定义成final?
答: 主要是为了“效率” 和 “安全性” 的缘故。若 String允许被继承, 由于它的高度被使用率, 可能会降低程序的性能,所以String被定义成final。
4. 问:finalizers和C++ 的 destructors有何差异?
答:Java内部具有“内存使用回收” 的机制, 虽然它也提供了类似 (C++ 的) destructors的 finalize(),每个对象都可以使用这个方法 method,但必须冒著破坏原先回收机制的危险。所以建议尽量避免使用finalize(),不妨考虑多使用 null 及 dispose() 来释出资源会好一些。
5. 问:继承了一个class叫做 Frotz,编译器却给我“No constuctor Frotz() in the class”这样的错误提示,为什么呢?
答:记住每当您定义了一个 class的constructor,除非您一开始就去call 这个constructor,否则 Java 会自动引入superclass原先不含参数的 constructor, 如果superclass的 constructor都是有参数的,那么问题中的错误提示便出现了。 解决的方法很简单, 找一找 API文件,加上正确的参数就得了。
6. 问:怎样让char类型的东西转换成int类型?
答:
char c = 'A';
int i = c;
//反过来只要作强制类型转换就行了
c = (char) I;
7. 问:我的applet原先好好的, 一放到web server就会有问题,为什么?
答:一般来说,从以下方向试试:
确定class文件的格式没错——已经编译过,也没有损坏的情形;
确定所有用到的class文件放到web server上,少一个都不行;
确定所有的文件名和class名称一致,特别检查大小写有无差错;
如果程序中用到package,web server上的目录就要当心了。譬如您在class中宣告了一个叫COM.foo.util的package,那么web server的applet codebase目录底下就非得有 COM/foo/util这个子目录不可。(注意目录名称也有大小写之分);
web server上的文件档案应该事先设定好。(尤其是search,read和execute权限)
8. 问:怎样在 Applet中用某个图形涂满整个背景?
答:在背景建立 Panel 或 Canvas, 然後用图形填满它。
9. 问:怎样在 Applet 中建立自己的菜单(MenuBar/Menu)?
答:首先在Applet的init() 方法中建立Frame instance, 然后将Menus, Menubar都加上去即可。 (setMenuBar() 是 Frame下的方法)或者,找到Applet上层的Frame后依法炮制。
Container parent = getParent();
while (! (parent instanceof Frame) )
parent = parent.getParent();
Frame theFrame = (Frame) parent;
注意:第二个方法在Mac或某些browsers上并不可行。
如果您使用的是JDK 1.1,也可以考虑使用popup menu,这样就不必理会Frame的问题了。
10. 怎样比较两个类型为String的字符串?
答:在两个对象之间使用 "==",会将“两个对象是否有同一reference”的结果传回。也就是说, 这等同于“两个对象是否拥有同一地址 (address)”,或者“两个对象物件是否为同一对象”。如果您的意思是判断两个字符串的内容是否相同,那么应该使用以下的方法才对:
if (s1.equals(s2) )
or if (s1.equalsIgnoreCase(s2) )
or if (s1.startsWith(s2) )
or if (s1.endsWith(s2) )
or if (s1.regionMatches(s1_offset, s2, s2_offset, length) )
or if (s1.compareTo(s2) <0)