Java初学问题实录(四)
2008-01-05 09:13:16 来源:WEB开发网核心提示:61. 问:book mybook=new book(bookid);book是servlet,出错, 答: book是servlet,能book mybook=new book(bookid); 说明自己实现了servlet容器?不然,servlet能让你自己去调用? servlet假如调用其
61. 问:book mybook=new book(bookid);book是servlet,出错。
答:
book是servlet,能book mybook=new book(bookid);
说明自己实现了servlet容器?不然,servlet能让你自己去调用?
servlet假如调用其实和EJB连1%的区别都没有,它们都是自己继续或实现一些接口,在这
些父类或接口中实现了假如和容器"打交道"的方法,然后容器调用这些方法来治理它,让它
生成实例,池化,钝化,销毁,再生等.所以这样写是错误的。
62. 问:给定一个字符串5*(5+9)/7怎样计算出结果?
答:
可有两种方法
1。用堆栈完成
2。最简单的方法,不用编程,假如有任何一个数据库的化,
用select (5*(5+9)/7) from oneTable
63. 问:如何实现递交表单内容的加密解密?
答:
假如你用IE目前只能用SSL协议,这一层不要你考虑,否则只你用你自己的工具加密传输
,接收后再解密友,至于如何加解,假如要和公认的系统结合,就用通用的md5,RAS等公开算法
,假如你只是自己传自己解,你随便按你的想法把数据加上一些东西,取回来按规则减掉这些
东西,我敢保证除你自己没有任何人能知道解密方法.
64. 问:为什么Integer.parseInt("+1");会抛出NumberFormatException的异常?
答:因为"+"运行算在java中被重载.系统无法确定你用的是算术加还是字符+。
这一点可以在javascript中更好地理解:
var a = document.t.s.value+1;
这时a = 12345,因为document.t.s.value作为字符串.
但var a = document.t.s.value-1;
a 就是1233,因为系统知道-运算肯定是算术运行.所以把document.t.s.value
转换成数字.
65. 问:hashCode() 有什么用为什么有时候需要覆盖Object里的hashcode()方法?
答:这就是这个对象的身份证啊,要不如何区分哪个对象。
66. 问:怎样在tomcat中实现一个定时执行的东东?
答:
在应用程序启动时自动运行。servlet2.3中定义了ServletListener,监听Servlet Con
text的启动或则关闭(可在配置文件中配置),启动时触发一个守护程序的运行(可以实现
java.util.Timer或则javax.swing.Timer).
67. 问:程序可以输出自己吗?
答:孔德悖论这个非常有名的法则.就是说任何程序都不可能输出自己.
68. 问:能够把字符转化成ASCII码?比如将 A 转化成 65?
答:
int a=´A´;
out.PRintln(a);
69. 问:如何区分输入的文字中的全角与半角?
答:由于不能分辨出全角和半角字符的值有什么规律,只好把全角符号牧举出来了.
70. 问:用户注册后的自动发信程序该怎么做?
答:
这种发信程序不考虑性能,因为不可能1秒就有一个人注册,我们说的考虑性能的发信程
序是指上百万封信在队列里要不停发送的那种,象你这个随便怎么写一个程序都行,没有必要
用JAVAMAIL.只要指定一个发信的服务器然后用cocket连它的25口就行了.
自己用SOCKET连SMTP的25口发一封信就好象两个邻居之间送一样东西,直接递过去得了
,用JAVAMAIL,消息机制就是你把这个东西从邮局寄给你的邻居了.
赞助商链接