200分跪求JAVA高手帮做个提取关键字的程序 200分+100RMB 在线跪求JAVA编程高手 能下午在线...

作者&投稿:崔侨 (若有异议请与网页底部的电邮联系)
//直接粘贴就行。
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Scanner;

import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JSplitPane;
import javax.swing.JTextArea;
import javax.swing.border.EtchedBorder;
import javax.swing.filechooser.FileFilter;

public class Application2 extends JFrame implements Cloneable{

public Application2(){
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setSize(800,700);
this.setLayout(new BorderLayout());
keyWords1=new String[]{"那么","还是","sdf"};
keyWords2=new String[]{"所以","而且",};
input=new JTextArea();
JPanel ip=new JPanel();
ip.setLayout(new BorderLayout());
ip.add(input,BorderLayout.CENTER);
ip.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "输入文本"));
output1=new JTextArea();
JPanel o1p=new JPanel();
o1p.setLayout(new BorderLayout());
o1p.add(output1,BorderLayout.CENTER);
o1p.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "以下为"));
output2=new JTextArea();
JPanel o2p=new JPanel();
o2p.setLayout(new BorderLayout());
o2p.add(output2,BorderLayout.CENTER);
o2p.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED), "以下为"));
JSplitPane split1=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,o1p,o2p);
split1.setDividerLocation(350);
JSplitPane split2=new JSplitPane(JSplitPane.VERTICAL_SPLIT,ip,split1);
split2.setDividerLocation(300);
this.add(split2,BorderLayout.CENTER);

open=new JButton("导入");
open.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JFileChooser chooser=new JFileChooser(".");
chooser.setMultiSelectionEnabled(false);
chooser.addChoosableFileFilter(new FileFilter(){
@Override
public boolean accept(File file) {
if(file.isDirectory())
return true;
int length=file.getName().length();
if(length<5)
return false;
if(file.getName().substring(length-4).equals(".txt"))
return true;
return false;
}
@Override
public String getDescription() {
return "文本文件";
}
});
chooser.showOpenDialog(Application2.this);
File file=chooser.getSelectedFile();
if(file==null)
return;
try {
Scanner sc=new Scanner(file);
String text="";
while(sc.hasNextLine())
text+=sc.nextLine()+"\n";
input.setText(text);
String[] array=getSentences();
output1.setText(getKeySentences(keyWords1,array));
output2.setText(getKeySentences(keyWords2,array));
}catch (IOException e1) {
e1.printStackTrace();
}
}
});
save=new JButton("导出");
save.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JFileChooser chooser=new JFileChooser(".");
chooser.setMultiSelectionEnabled(false);
chooser.addChoosableFileFilter(new FileFilter(){
@Override
public boolean accept(File file) {
if(file.isDirectory())
return true;
int length=file.getName().length();
if(length<5)
return false;
if(file.getName().substring(length-4).equals(".txt"))
return true;
return false;
}
@Override
public String getDescription() {
return "文本文件";
}
});
chooser.showSaveDialog(Application2.this);
File file=chooser.getSelectedFile();
if(file==null)
return;
try {
PrintWriter pw=new PrintWriter(file);
pw.print(output1.getText());
pw.flush();
pw.print(output2.getText());
pw.flush();
}catch (IOException e1) {
e1.printStackTrace();
}
}
});
JPanel buttonPane=new JPanel();
buttonPane.add(open);
buttonPane.add(save);
this.add(buttonPane,BorderLayout.SOUTH);
}

public String[] getSentences(){
ArrayList<String> set=new ArrayList<String>();
int length=input.getText().length();
for(int i=0,last=0;i<length;i++){
String s=String.valueOf(input.getText().charAt(i));
if(s.equals("\n"))
last=i+1;
if(s.equals(".")||s.equals(",")||s.equals("。")||s.equals("。")||s.equals("!")||s.equals("?")||s.equals("?")||s.equals("!")||s.equals(",")){
set.add(input.getText().substring(last,i)+s);
last=i+1;
}
}
return set.<String>toArray(new String[set.size()]);
}

public String getKeySentences(String[] key,String[] sentences){
String result="";
A: for(int i=0;i<sentences.length;i++){
for (int k = 0; k < key.length; k++)
if (sentences[i].contains(key[k].subSequence(0, key[k].length()))) {
result += sentences[i] + "\n";
continue A;
}
}
return result;
}

private JTextArea input;
private JTextArea output1;
private JTextArea output2;
private JButton open;
private JButton save;
private String[] keyWords1;
private String[] keyWords2;

public static void main(String... args){
EventQueue.invokeLater(new Runnable(){
public void run(){
new Application2().setVisible(true);
}
});
}
}

啥意思?

看下apache的Lucene。

我不大明白“提取关键字”具体要实现什么功能?
我这里以前做过这样的一个功能,代码还都保留:

实现将一段文章分词(支持中文)
设定一些关键词 比如说“体育 篮球 NBA”,“足球 英超 中超”,
根据关键词和或得到的分词作一些算法,判断这组关键词是否和这篇文章匹配,以及匹配程度。

可以把详细要实现的功能通过baidu信息留给我。。或者直接hi留言。

补充!!

俺也像大家提下问题,,我早期用Jbuilder是可以做出这样的窗体状的windows应用,还有没其他编辑器能够这样设计窗体的?
现在web项目做多了,对这些东西没有概念了。。。。。

lucene可以实现你的功能,外就是存储到数据库,这样用语句就可以查询了。

写好了,你看看吧
http://blog.csdn.net/shmilyhe/archive/2010/11/23/6029650.aspx

200分求帮写个JAVA读取XML的代码~

解析xml方法,供参考,希望能帮助lz点

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package xml;

import java.io.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.w3c.dom.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.StreamResult;
import org.xml.sax.SAXException;


public class MyXMLReader {

public String libPath = null;
public String filePath;

public void setFilePath(String filePath) {
this.filePath = filePath;
}

public String getLibPath() {
return libPath;
}
//得到用户xml中各个节点的值
public void getPathValue(String xmlPath) throws ParserConfigurationException, SAXException, IOException {

File f = new File(xmlPath);
FileInputStream fs=new FileInputStream(f);
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(f);
NodeList n2 = doc.getDocumentElement().getElementsByTagName("context-param");
for (int i = 0; i < n2.getLength(); i++) {
String name = doc.getElementsByTagName("param-name").item(i).getFirstChild().getNodeValue();
String value = doc.getElementsByTagName("param-value").item(i).getFirstChild().getNodeValue();
if (name.equals("libPath")) {
libPath = value;
}
}
}
//将要更新文件中的值替换掉
public void setPathValue() throws ParserConfigurationException, SAXException, IOException {
String xml="./hzims/Tomcat6/webapps/ROOT/WEB-INF/web.xml";
File f = new File(xml);
FileInputStream fs=new FileInputStream(f);
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(f);
NodeList n2 = doc.getDocumentElement().getElementsByTagName("context-param");
for (int i = 0; i < n2.getLength(); i++) {
String name = doc.getElementsByTagName("param-name").item(i).getFirstChild().getNodeValue();
String value = doc.getElementsByTagName("param-value").item(i).getFirstChild().getNodeValue();
if (name.equals("libPath")) {
doc.getElementsByTagName("param-value").item(i).getFirstChild().setNodeValue(libPath);
try {
reSetValue(doc,"./hzims/Tomcat6/webapps/ROOT/WEB-INF/web.xml" );
} catch (FileNotFoundException ex) {
Logger.getLogger(MyXMLReader.class.getName()).log(Level.SEVERE, null, ex);
} catch (TransformerConfigurationException ex) {
Logger.getLogger(MyXMLReader.class.getName()).log(Level.SEVERE, null, ex);
} catch (TransformerException ex) {
Logger.getLogger(MyXMLReader.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
}

public void reSetValue(Document doc, String path) throws FileNotFoundException, IOException, TransformerConfigurationException,
TransformerException {
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
//设置输出的encoding为改变gb2312
transformer.setOutputProperty("encoding", "gb2312");
DOMSource source = new DOMSource(doc);
StreamResult result = new StreamResult(new File(path));
transformer.transform(source, result);


}
}

“Thinking in Java”详细目录



写在前面的话

引言
1. 前提
2. Java的学习
3. 目标
4. 联机文档
5. 章节
6. 练习
7. 多媒体CD-ROM
8. 源代码
9. 编码样式
10. Java版本
11. 课程和培训
12. 错误
13. 封面设计
14. 致谢

第1章 对象入门
1.1 抽象的进步
1.2 对象的接口
1.3 实现方案的隐藏
1.4 方案的重复使用
1.5 继承:重新使用接口
1.5.1 改善基础类
1.5.2 等价和类似关系
1.6 多形对象的互换使用
1.6.1 动态绑定
1.6.2 抽象的基础类和接口
1.7 对象的创建和存在时间
1.7.1 集合与继承器
1.7.2 单根结构
1.7.3 集合库与方便使用集合
1.7.4 清除时的困境:由谁负责清除?
1.8 违例控制:解决错误
1.9 多线程
1.10 永久性
1.11 Java和因特网
1.11.1 什么是Web?
1.11.2 客户端编程
1.11.3 服务器端编程
1.11.4 一个独立的领域:应用程序
1.12 分析和设计
1.12.1 不要迷失
1.12.2 阶段0:拟出一个计划
1.12.3 阶段1:要制作什么?
1.12.4 阶段2:开始构建?
1.12.5 阶段3:正式创建
1.12.6 阶段4:校订
1.12.7 计划的回报
1.13 Java还是C++?

第2章 一切都是对象
2.1 用句柄操纵对象
2.2 必须创建所有对象
2.2.1 保存在什么地方
2.2.2 特殊情况:主类型
2.2.3 Java中的数组
2.3 绝对不要清除对象
2.3.1 作用域
2.3.2 对象的作用域
2.4 新建数据类型:类
2.4.1 字段和方法
2.5 方法、自变量和返回值
2.5.1 自变量列表
2.6 构建Java程序
2.6.1 名字的可见性
2.6.2 使用其他组件
2.6.3 static关键字
2.7 我们的第一个Java程序
2.8 注释和嵌入文档
2.8.1 注释文档
2.8.2 具体语法
2.8.3 嵌入HTML
2.8.4 @see:引用其他类
2.8.5 类文档标记
2.8.6 变量文档标记
2.8.7 方法文档标记
2.8.8 文档示例
2.9 编码样式
2.10 总结
2.11 练习

第3章 控制程序流程
3.1 使用Java运算符
3.1.1 优先级
3.1.2 赋值
3.1.3 算术运算符
3.1.4 自动递增和递减
3.1.5 关系运算符
3.1.6 逻辑运算符
3.1.7 按位运算符
3.1.8 移位运算符
3.1.9 三元if-else运算符
3.1.10 逗号运算符
3.1.11 字串运算符+
3.1.12 运算符常规操作规则
3.1.13 造型运算符
3.1.14 Java没有“sizeof”
3.1.15 复习计算顺序
3.1.16 运算符总结
3.2 执行控制
3.2.1 真和假
3.2.2 if-else
3.2.3 反复
3.2.4 do-while
3.2.5 for
3.2.6 中断和继续
3.2.7 切换
3.3 总结
3.4 练习

第4章 初始化和清除
4.1 由构建器保证初始化
4.2 方法过载
4.2.1 区分过载方法
4.2.2 主类型的过载
4.2.3 返回值过载
4.2.4 默认构建器
4.2.5 this关键字
4.3 清除:收尾和垃圾收集
4.3.1 finalize()用途何在
4.3.2 必须执行清除
4.4 成员初始化
4.4.1 规定初始化
4.4.2 构建器初始化
4.5 数组初始化
4.5.1 多维数组
4.6 总结
4.7 练习

第5章 隐藏实施过程
5.1 包:库单元
5.1.1 创建独一无二的包名
5.1.2 自定义工具库
5.1.3 利用导入改变行为
5.1.4 包的停用
5.2 Java访问指示符
5.2.1 “友好的”
5.2.2 public:接口访问
5.2.3 private:不能接触
5.2.4 protected:“友好的一种”
5.3 接口与实现
5.4 类访问
5.5 总结
5.6 练习

第6章 类再生
6.1 合成的语法
6.2 继承的语法
6.2.1 初始化基础类
6.3 合成与继承的结合
6.3.1 确保正确的清除
6.3.2 名字的隐藏
6.4 到底选择合成还是继承
6.5 protected
6.6 递增开发
6.7 上溯造型
6.7.1 何谓“上溯造型”?
6.8 final关键字
6.8.1 final数据
6.8.2 final方法
6.8.3 final类
6.8.4 final的注意事项
6.9 初始化和类装载
6.9.1 继承初始化
6.10 总结
6.11 练习

第7章 多形性
7.1 上溯造型
7.1.1 为什么要上溯造型
7.2 深入理解
7.2.1 方法调用的绑定
7.2.2 产生正确的行为
7.2.3 扩展性
7.3 覆盖与过载
7.4 抽象类和方法
7.5 接口
7.5.1 Java的“多重继承”
7.5.2 通过继承扩展接口
7.5.3 常数分组
7.5.4 初始化接口中的字段
7.6 内部类
7.6.1 内部类和上溯造型
7.6.2 方法和作用域中的内部类
7.6.3 链接到外部类
7.6.4 static内部类
7.6.5 引用外部类对象
7.6.6 从内部类继承
7.6.7 内部类可以覆盖吗?
7.6.8 内部类标识符
7.6.9 为什么要用内部类:控制框架
7.7 构建器和多形性
7.7.1 构建器的调用顺序
7.7.2 继承和finalize()
7.7.3 构建器内部的多形性方法的行为
7.8 通过继承进行设计
7.8.1 纯继承与扩展
7.8.2 下溯造型与运行期类型标识
7.9 总结
7.10 练习

第8章 对象的容纳
8.1 数组
8.1.1 数组和第一类对象
8.1.2 数组的返回
8.2 集合
8.2.1 缺点:类型未知
8.3 枚举器(反复器)
8.4 集合的类型
8.4.1 Vector
8.4.2 BitSet
8.4.3 Stack
8.4.4 Hashtable
8.4.5 再论枚举器
8.5 排序
8.6 通用集合库
8.7 新集合
8.7.1 使用Collections
8.7.2 使用Lists
8.7.3 使用Sets
8.7.4 使用Maps
8.7.5 决定实施方案
8.7.6 未支持的操作
8.7.7 排序和搜索
8.7.8 实用工具
8.8 总结
8.9 练习

第9章 违例差错控制
9.1 基本违例
9.1.1 违例自变量
9.2 违例的捕获
9.2.1 try块
9.2.2 违例控制器
9.2.3 违例规范
9.2.4 捕获所有违例
9.2.5 重新“掷”出违例
9.3 标准Java违例
9.3.1 RuntimeException的特殊情况
9.4 创建自己的违例
9.5 违例的限制
9.6 用finally清除
9.6.1 用finally做什么
9.6.2 缺点:丢失的违例
9.7 构建器
9.8 违例匹配
9.8.1 违例准则
9.9 总结
9.10 练习

第10章 Java IO系统
10.1 输入和输出
10.1.1 InputStream的类型
10.1.2 OutputStream的类型
10.2 增添属性和有用的接口
10.2.1 通过FilterInputStream从InputStream里读入数据
10.2.2 通过FilterOutputStream向OutputStream里写入数据
10.3 本身的缺陷:RandomAccessFile
10.4 File类
10.4.1 目录列表器
10.4.2 检查与创建目录
10.5 IO流的典型应用
10.5.1 输入流
10.5.2 输出流
10.5.3 快捷文件处理
10.5.4 从标准输入中读取数据
10.5.5 管道数据流
10.6 StreamTokenizer
10.6.1 StringTokenizer
10.7 Java 1.1的IO流
10.7.1 数据的发起与接收
10.7.2 修改数据流的行为
10.7.3 未改变的类
10.7.4 一个例子
10.7.5 重定向标准IO
10.8 压缩
10.8.1 用GZIP进行简单压缩
10.8.2 用Zip进行多文件保存
10.8.3 Java归档(jar)实用程序
10.9 对象串联
10.9.1 寻找类
10.9.2 序列化的控制
10.9.3 利用“持久性”
10.10 总结
10.11 练习

第11章 运行期类型鉴定
11.1 对RTTI的需要
11.1.1 Class对象
11.1.2 造型前的检查
11.2 RTTI语法
11.3 反射:运行期类信息
11.3.1 一个类方法提取器
11.4 总结
11.5 练习

第12章 传递和返回对象
12.1 传递句柄
12.1.1 别名问题
12.2 制作本地副本
12.2.1 按值传递
12.2.2 克隆对象
12.2.3 使类具有克隆能力
12.2.4 成功的克隆
12.2.5 Object.clone()的效果
12.2.6 克隆合成对象
12.2.7 用Vector进行深层复制
12.2.8 通过序列化进行深层复制
12.2.9 使克隆具有更大的深度
12.2.10 为什么有这个奇怪的设计
12.3 克隆的控制
12.3.1 副本构建器
12.4 只读类
12.4.1 创建只读类
12.4.2 “一成不变”的弊端
12.4.3 不变字串
12.4.4 String和StringBuffer类
12.4.5 字串的特殊性
12.5 总结
12.6 练习

第13章 创建窗口和程序片
13.1 为何要用AWT?
13.2 基本程序片
13.2.1 程序片的测试
13.2.2 一个更图形化的例子
13.2.3 框架方法的演示
13.3 制作按钮
13.4 捕获事件
13.5 文本字段
13.6 文本区域
13.7 标签
13.8 复选框
13.9 单选钮
13.10 下拉列表
13.11 列表框
13.11.1 handleEvent()
13.12 布局的控制
13.12.1 FlowLayout
13.12.2 BorderLayout
13.12.3 GridLayout
13.12.4 CardLayout
13.12.5 GridBagLayout
13.13 action的替用品
13.14 程序片的局限
13.14.1 程序片的优点
13.15 视窗化应用
13.15.1 菜单
13.15.2 对话框
13.16 新型AWT
13.16.1 新的事件模型
13.16.2 事件和接收者类型
13.16.3 用Java 1.1 AWT制作窗口和程序片
13.16.4 再探早期示例
13.16.5 动态绑定事件
13.16.6 将商业逻辑与UI逻辑区分开
13.16.7 推荐编码方法
13.17 Java 1.1 UI API
13.17.1 桌面颜色
13.17.2 打印
13.17.3 剪贴板
13.18 可视编程和Beans
13.18.1 什么是Bean
13.18.2 用Introspector提取BeanInfo
13.18.3 一个更复杂的Bean
13.18.4 Bean的封装
13.18.5 更复杂的Bean支持
13.18.6 Bean更多的知识
13.19 Swing入门
13.19.1 Swing有哪些优点
13.19.2 方便的转换
13.19.3 显示框架
13.19.4 工具提示
13.19.5 边框
13.19.6 按钮
13.19.7 按钮组
13.19.8 图标
13.19.9 菜单
13.19.10 弹出式菜单
13.19.11 列表框和组合框
13.19.12 滑杆和进度指示条
13.19.13 树
13.19.14 表格
13.19.15 卡片式对话框
13.19.16 Swing消息框
13.19.17 Swing更多的知识
13.20 总结
13.21 练习

第14章 多线程
14.1 反应灵敏的用户界面
14.1.1 从线程继承
14.1.2 针对用户界面的多线程
14.1.3 用主类合并线程
14.1.4 制作多个线程
14.1.5 Daemon线程
14.2 共享有限的资源
14.2.1 资源访问的错误方法
14.2.2 Java如何共享资源
14.2.3 回顾Java Beans
14.3 堵塞
14.3.1 为何会堵塞
14.3.2 死锁
14.4 优先级
14.4.1 线程组
14.5 回顾runnable
14.5.1 过多的线程
14.6 总结
14.7 练习

第15章 网络编程
15.1 机器的标识
15.1.1 服务器和客户机
15.1.2 端口:机器内独一无二的场所
15.2 套接字
15.2.1 一个简单的服务器和客户机程序
15.3 服务多个客户
15.4 数据报
15.5 一个Web应用
15.5.1 服务器应用
15.5.2 NameSender程序片
15.5.3 15.5.3 要注意的问题
15.6 Java与CGI的沟通
15.6.1 CGI数据的编码
15.6.2 程序片
15.6.3 用C++写的CGI程序
15.6.4 POST的概念
15.7 用JDBC连接数据库
15.7.1 获得学习示例
15.7.2 查找程序的GUI版本
15.7.3 JDBC API为何如何复杂
15.8 远程方法
15.8.1 远程接口概念
15.8.2 远程接口的实施
15.8.3 创建根与干
15.8.4 使用远程对象
15.8.5 RMI的替选方案
15.9 总结
15.10 练习

第16章 设计范式
16.1 范式的概念
16.1.1 单子
16.1.2 范式分类
16.2 观察器范式
16.3 模拟垃圾回收站
16.4 改进设计
16.4.1 “制作更多的对象”
16.4.2 用于原型创建的一个范式
16.5 抽象的应用
16.6 多重派遣
16.6.1 实现双重派遣
16.7 访问器范式
16.8 RTTI有害吗
16.9 总结
16.10 练习

第17章 项目
17.1 文字处理
17.1.1 提取代码列表
17.1.2 检查大小写样式
17.2 方法查找工具
17.3 复杂性理论
17.4 总结
17.5 练习

附录A 使用非Java代码
A.1 Java固有接口
A.1.1 调用固有方法
A.1.2 访问JNI函数:JNIEnv自变量
A.1.3 传递和使用Java对象
A.1.4 JNI和Java违例
A.1.5 JNI和线程处理
A.1.6 使用现成代码
A.2 微软的解决方案
A.3 J/Direct
A.3.1 @dll.import引导命令
A.3.2 com.ms.win32包
A.3.3 汇集
A.3.4 编写回调函数
A.3.5 其他J/Direct特性
A.4 本原接口(RNI)
A.4.1 RNI总结
A.5 Java/COM集成
A.5.1 COM基础
A.5.2 MS Java/COM集成
A.5.3 用Java设计COM服务器
A.5.4 用Java设计COM客户
A.5.5 ActiveX/Beans集成
A.5.6 固有方法与程序片的注意事项
A.6 CORBA
A.6.1 CORBA基础
A.6.2 一个例子
A.6.3 Java程序片和CORBA
A.6.4 比较CORBA与RMI
A.7 总结

附录B 对比C++和Java

附录C Java编程规则

附录D 性能
D.1 基本方法
D.2 寻找瓶颈
D.2.1 安插自己的测试代码
D.2.2 JDK性能评测[2]
D.2.3 特殊工具
D.2.4 性能评测的技巧
D.3 提速方法
D.3.1 常规手段
D.3.2 依赖语言的方法
D.3.3 特殊情况
D.4 参考资源
D.4.1 性能工具
D.4.2 Web站点
D.4.3 文章
D.4.4 Java专业书籍
D.4.5 一般书籍


附录F 推荐读物

■《Java in a Nutshell:A Desktop Quick Reference,第2版》
作者:David Flanagan
出版社:O'Reilly & Assoc
出版时间:1997
简介:对Java 1.1联机文档的一个简要总结。就个人来说,我更喜欢在线阅览文档,特别是在它们变化得如此快的时候。然而,许多人仍然喜欢印刷出来的文档,这样可以省一些上网费。而且这本书也提供了比联机文档更多的讨论。

■《The Java Class Libraries:An Annotated Reference》
作者:Patrick Chan和Rosanna Lee
出版社:Addison-Wesley
出版时间:1997
简介:作为一种联机参考资源,应向读者提供足够多的说明,使其简单易用。《Thinking in Java》的一名技术审定员说道:“如果我只能有一本Java书,那么肯定选它。”不过我可没有他那么激动。它太大、太贵,而且示例的质量并不能令我满意。但在遇到麻烦的时候,该书还是很有参考价值的。而且与《Java in a Nutshell》相比,它看起来有更大的深度(当然也有更多的文字)。

■《Java Network Programming》
作者:Elliote Rusty Harold
David Flanagan
出版社:O'Reilly
出版时间:1997
简介:在阅读本书前,我可以说根本不理解Java有关网络的问题。后来,我也发现他的Web站点“Cafe au Lait”是个令人激动的、很人个性的以及经常更新的去处,涉及大量有价值的Java开发资源。由于几乎每天更新,所以在这里能看到与Java有关的大量新闻。站点地址是:http://sunsite.unc.edu/javafaq/。

■《Core Java,第3版》
作者:Cornel和Horstmann
出版社:Prentice-Hall
出版时间:1997
简介:对于自己碰到的问题,若在《Thinking in Java》里找不到答案,这就是一个很好的参考地点。注意:Java 1.1的版本是《Core Java 1.1 Volume 1-Fundamentals & Core Java 1.1 Volume 2-Advanced Features》

■《JDBC Database Access with Java》
作者:Hamilton,Cattell和Fisher
出版社:Addison-Wesley
出版时间:1997
简介:如果对SQL和数据库一无所知,这本书就可以作为一个相当好的起点。它也对API进行了详尽的解释,并提供一个“注释参考。与“Java系列”(由JavaSoft授权的唯一一套丛书)的其他所有书籍一样,这本书的缺点也是进行了过份的渲染,只说Java的好话——在这一系列书籍里找不到任何不利于Java的地方。

■《Java Programming with CORBA》
作者:Andreas Vogel和Keith Duddy
出版社:Jonh Wiley & Sons
出版时间:1997
简介:针对三种主要的Java ORB(Visbroker,Orbix,Joe),本书分别用大量代码实例进行了详尽的阐述。

■《Design Patterns》
作者:Gamma,Helm,Johnson和Vlissides
出版社:Addison-Wesley
出版时间:1995
简介:这是一本发起了编程领域方案革命的经典书籍。

■《UML Toolkit》
作者:Hans-Erik Eriksson和Magnus Penker
出版社:Jonh Wiley & Sons
出版时间:1997
简介:解释UML以及如何使用它,并提供Java的实际案例供参考。配套CD-ROM包含了Java代码以及Rational Rose的一个删减版本。本书对UML进行了非常出色的描述,并解释了如何用它构建实际的系统。

■《Practical Algorithms for Programmers》
作者:Binstock和Rex
出版社:Addison-Wesley
出版时间:1995
简介:算法是用C描述的,所以它们很容易就能转换到Java里面。每种算法都有详尽的解释。

java高手有兴趣的帮忙做下这些题目啊!
答:ABABA 3 Panel 子类 swing File 缓冲区 获得数据库连接 ,数据库地址,用户名,密码 数据库映射对象,hibernate ibatis,将关系数据库影射为对象 同:不可实例化;异:接口不能实现方法,接口可以多”继承“,session是WEB服务器上为客户端分配的ID,用于辨别多次访问是否属于同一个用户,方法:设置事件,...

java题目 ,那位高手帮忙做一下,谢谢了
答:public class Dog { private String name; private String color; private int weight; private int age; public Dog() { } public Dog(String name, String color, int weight, int age) { this.name = name; this.color = color; this.weight = weight; ...

Java面向对象程序设计.哪位JAVA高手,帮我做一下下面的试题..._百度知...
答:1、B;2、C;3、B;4、B;5、B;6、C;7、B;8、C;9、C;10、A;11、D;12、D;13、B;14、A;15、D 无聊哦~~~三楼说的不错!方法重载是指参数的个数与类型不一样!所以13题应该是A,不过1题就是看不准那个下划线或减号了,呜呜~~...

求助:请高手帮忙用JAVA程序做一个计算器~
答:(1)import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Calculator extends JFrame { private Container container;private GridBagLayout layout;private GridBagConstraints constraints;private JTextField displayField;//计算结果显示区 private String lastCommand;//保存+,-,*,...

请JAVA高手帮我编3道小题 高分。。
答:第一题 import java.util.Scanner;public class Test99 { public static void main(String[] args) { System.out.println("请输入一个数字");Scanner sc = new Scanner(System.in);String s = sc.nextLine();// 获取输入的字符串 int i = Integer.parseInt(s);//将字符串转化为数字 System...

java高手来啊!帮帮忙!特别是做过游戏的
答:圆圈不会停下来的Java程序,你按下一个方向键后,圆圈会不停向那个方向走。不知道这是不是你想要的效果。完整的程序如下:import java.awt.Frame;import java.awt.Graphics;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;import java.awt.event.WindowAdapter;import java.awt.event...

java前辈高手请进
答:Java的学习重点分为以下几个部分:• Java面向对象思想的运用,可以灵活的运用各个知识点进行现实世界的抽象 • Java集合框架及数据结构,集合作为java最重要的部分,要清楚的掌握集合中各个操作细小的部分及区别,并可以编写数据结构,以巩固java类集的理解。• Java IO操作,为日后的...

JAVA编程题,急求呀。。。高手帮下忙
答:public class Person { public String name;public int age;public void showInfo(){ System.out.println(name+","+age);} public Person(){} public Person(String name, int age) { this.name = name;this.age = age;} } public class Student extends Person{ public int id;public ...

java高手请进
答:你好,很高兴回答你的问题。请看下图。第一个框圈起来的代码是弹出一个可以接受输入的框,将接收的输入值赋值给变量stuno。第二个框圈起来的代码,判断如果stuno不为null,则执行删除语句,删除的条件是bookid等于stuno。第三个框里的代码,弹出一个消息框提示删除成功。第四个框是如果在删除时捕获到...

求一JAVA高手
答:1.常用的三种流程控制:顺序结构 选择结构 循环结构 2.分支语句分为if分支语句和switch分支语句 3.循环分为for循环、do-while循环以及while循环,在循环中嵌套循环既可以派生循环 4.考虑类的访问权限,字段的访问权限,类中包括哪些方法,方法访问权限。是否该类需要设定为抽象类(abstract类,不能被实例...