GUI开发

先前用Java编写GUI程序,是使用抽象窗口工具包AWT(Abstract Window Toolkit).现在多用Swing。Swing可以看作是AWT的改良版,而不是代替AWT,是对AWT的提高和扩展。所以,在写GUI程序时,Swing和AWT都要作用。它们共存于Java基础类(Java Foundation Class,JFC)中。

AWT依赖于主平台绘制用户界面组件;而Swing有自己的机制,在主平台提供的窗口中绘制和管理界面组件。Swing与AWT之间的最明显的区别是界面组件的外观,AWT在不同平台上运行相同的程序,界面的外观和风格可能会有一些差异。然而,一个基于Swing的应用程序可能在任何平台上都会有相同的外观和风格。

Swing中的类是从AWT继承的,有些Swing类直接扩展AWT中对应的类。例如,JApplet、JDialog、JFrame和JWindow。

使用Swing设计图形界面,主要引入两个包:

  • javax.swing包:包含Swing的基本类;
  • java.awt.event包:包含与处理事件相关的接口和类。
import javax.swing.*;

public class Example1_1 {

    public static void main(String[] args) {
JFrame mw = new JFrame("Demo Form");
mw.setSize(,);
JButton button = new JButton("Demo Button");
mw.getContentPane().add(button);
mw.setVisible(true);
} }

图形界面开发使用的各种空间,最好在网站上找例子,写一写Demo

http://www.weixueyuan.net/java/rumen_11/

网络编程

Java提供一系列的类支持Java程序访问网络资源。

先了解下网络协议

InetAddress类的对象用于IP地址和域名

public static void main(String[] args) {
try {
InetAddress addr = InetAddress.getByName("www.weixueyuan.net");
String domain = addr.getHostName();
String ip = addr.getHostAddress();
System.out.println(domain);
System.out.println(ip); } catch (UnknownHostException e) {
e.printStackTrace();
}
}

URL

统一资源定位符URL(Uniform Resource Locator)是www客户机访问Internet时用来标识资源的名字和地址。

URL url;
try {
url = new URL("http://www.weixueyuan.net:80/");
} catch (MalformedURLException e) {
e.printStackTrace();
}

要接收和发关信息还要用URLConnection

url = new URL("http://www.weixueyuan.net:80/");
URLConnection urlConnection = url.openConnection();

提供的以下方法获得流对象和实现网络连接:

  1. getOutputStream():获得向远程主机发送信息的OutputStream流对象;
  2. getInputStream():获得从远程主机获取信息的InputStream流对象。有了网络连接的输入和输出流,程序就可实现远程通信;
  3. connect():设置网络连接。

示例:读取URL资源

import java.io.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.JTextArea;
import javax.swing.JTextField; public class Example1_1 { public static void main(String[] args) {
new DownNetFile();
} } class DownNetFile extends JFrame implements ActionListener {
JTextField infield = new JTextField();
JTextArea showArea = new JTextArea();
JButton b = new JButton("download");
JPanel p = new JPanel(); DownNetFile() {
super("read network text file application");
Container con = this.getContentPane();
p.add(infield);
p.add(b);
JScrollPane jsp = new JScrollPane(showArea);
b.addActionListener(this);
con.add(p, "North");
con.add(jsp, "Center");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(, );
setVisible(true);
} public void actionPerformed(ActionEvent e) {
readByURL(infield.getText());
} public void readByURL(String urlName) {
try {
showArea.setText("");
URL url = new URL(urlName);
URLConnection tc = url.openConnection();
tc.connect();
InputStreamReader in = new InputStreamReader(tc.getInputStream());
BufferedReader br = new BufferedReader(in);
String line;
while ((line = br.readLine()) != null) {
showArea.append(line +"\n");
}
br.close(); } catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} }
}

Socket

http://www.weixueyuan.net/view/6080.html

数据库

http://www.weixueyuan.net/view/6081.html

CURD

Java基础暂时学习这些,接下来会学习一些java web开发,之后遇到问题时在做深入研究。

Java基础知识学习(九)的更多相关文章

  1. java基础知识学习笔记

    本文知识点以js为参照.对比分析得出笔记.JavaScript之所以叫JavaScript是打算借助java推广自己.虽然都是开发语言,但JavaScript一开始主要运行在 客户端,而java主要运 ...

  2. Java基础知识学习(三)

    面向对象部分 首先要了解面向对象的思想,与C#一致,都是面向对象的语言 访问修饰符 public 共有的,对所有类可见. protected 受保护的,对同一包内的类和所有子类可见. private ...

  3. Java基础知识学习(一)

    部门接了新项目,后台使用Java框架play framework,前端是html,前后台通过rest交互,能够支持多端的互联网架构. 因为之前没有Java基础,前端使用的也很少,决定深入学习一下Jav ...

  4. Java基础知识陷阱(九)

    本文发表于本人博客. 今天我来说说关于JAVA多线程知识,有错误请指出.大家都知道JAVA在服务端上处理也有很大优势,很多公司也有在服务器跑JAVA进程,这说明JAVA在处理这个多线程以及并发下也有一 ...

  5. Java基础知识学习(二)

    Java语法基础 数据类型.类型转换.运算符.逻辑运算符.参考C#,基本一致 输入输出 输出 System.out.print("abc"); System.out.printf( ...

  6. java基础知识学习 内存相关

    Java 内存分配策略 静态存储区(方法区):主要存放静态数据.全局 static 数据和常量.这块内存在程序编译时就已经分配好,并且在程序整个运行期间都存在. 栈区 :当方法被执行时,方法体内的局部 ...

  7. Java基础知识学习(八)

    IO操作 5个重要的类分别是:InputStream.OutStream.Reader.Writer和File类 面向字符的输入输出流 输入流都是Reader的子类, CharArrayReader ...

  8. Java基础知识学习(七)

    线程(续) 线程同步 当两个或两个以上的线程需要共享资源,它们需要某种方法来确定资源在某一刻仅被一个线程占用.达到此目的的过程叫做同步(synchronization) 可以用两种方法同步化代码.两者 ...

  9. Java基础知识学习(六)

    多线程 先了解线程的概念 多线程需要注意的地方 优先级.线程同步.消息传递.数据共享.死锁等 Java线程类 Thread,实现接口 Runnable Thread常用方法 getName 获得线程名 ...

随机推荐

  1. No Javascript on this page

    在调试SignalR程序时,不知怎样的情况,出现异常: HTTP Error 404.0 - Not Found The resource you are looking for has been r ...

  2. Entity Framework 实体框架的形成之旅--基类接口的统一和异步操作的实现(3)

    在本系列的第一篇随笔<Entity Framework 实体框架的形成之旅--基于泛型的仓储模式的实体框架(1)>中介绍了Entity Framework 实体框架的一些基础知识,以及构建 ...

  3. Swift 3 迁移工作总结

    写在前面 Swift 3.0 正式版发布了差不多快一个月了,断断续续的把手上和 Swift 相关的迁移到了Swift 3.0.所以写点小总结. 背景 代码量(4万行) 首先,我是今年年初才开始入手 S ...

  4. MVC的路径查找顺序

    使用MVC的朋友们,知道MVC的funny之处. 但是如果出现路径找不到,请记住以下的页面路径寻找顺序. http://www.cnblogs.com/sosoft/ 首先,知道你的Controlle ...

  5. 提升VMware虚拟机性能招数

    在VMware虚拟机(VMware Workstation或VMware Server)中我们可以同时运行多个Guest OS,当同时在同一Host OS中运行多台虚拟机时势必会严重影响到Host O ...

  6. MVC - Action和ActionResult

    Action 定义在Controller中的Action方法返回ActionResult对象,ActionResult是对Action执行结果的封装,用于最终对请求进行响应.HTTP是一个单纯的采用请 ...

  7. 硬链接 and 软链接

    硬链接 软链接

  8. 【C#】第3章学习要点(二)自定义类和结构

    分类:C#.VS2015 创建日期:2016-06-19 使用教材:(十二五国家级规划教材)<C#程序设计及应用教程>(第3版) 一.要点概述 别人提供的类都是为了简化你的工作量用的,可是 ...

  9. Android Volley框架的使用(1)

    在Android开发中,经常要通过HTTP请求访问网络.为了使通过HTTP请求访问网络的过程更加简单,2013年提出了新的HTTP通信框架--Volley.Volley使用起来非常简单,适用于网络访问 ...

  10. hhvm的正确安装姿势 http://dl.hhvm.com 镜像

    hhvm是php的第三方运行环境,由facebook出品,基于该运行环境,它还提供了一种编程语言hack - PHP的静态类型版. 折腾了一天后,包括各种编译.配置.FQ,后面终于忍不住搜了一下 ht ...