第十讲 Java 资源结构-api
主要内容 Java 资源库概述 |
native可以直接调用C和C++来搞一些硬件底层的东西。
基础包(核心包)
java.lang 包
language,基本语言包。自动加载。
包含了 Java 程序必不可少的 System 类;
为 Java 语言的基本数据类型、 字符串类、数组提供了基本的类描述;
包含了线程和异常处理类
java.util 包
utility,实用工具包。
包含了 Java 语言中可实现特定功能的类:日期、向量、随机数和堆栈等。
java.io 包
input|output,输入输出包:包含了标准输入输出和文件处理的类。可使 java
程序实现与操作系统相关的较底层的输入输出处理。
应用包
java.awt 包
窗口工具包。包含了可用来构建图形用户界面的类。
Graphics 类,相关的低级绘图操作;
Java 语言程序设计
图形界面的组件和布局:如 Label、 TextField、 CheckBox、 LayoutManager
接口等;
用户交互控制和事件呼应
javax.swing 包
另一个窗口工具包。早期版本是 java.awt.swing,后集成到了 javax.swing
中。
java.applet 包
小程序应用类包:包中除了有一个 Applet 类之外,还有三个接口:
AppletContext、 AppletStub、 AudioClip。
java.applet 包提供了与支持 Java 的浏览器进行交互的方式的 Applet 类,
可以在 HTML 网页中嵌入图像和声音等元素。
java.net 包
网络应用包:提供了通过 telnet、 ftp、 www 之类的协议访问网络的类。 可
用于快速地开发网络应用程序。
通过丰富 java.net 包, java 的网络功能随着版本更新而有扩充 。
API:
java.lang.Object 类:clone() 、equals(Object obj):由程序员决定、finalize()、
getClass()、hashCode() 、notify() 、notifyAll() 、toString():用于输出对象,常来;
线程同步的:wait() 、wait(long timeout) 、wait(long timeout, int nanos)。
实例1:equals(),hashCode(),toString()来比较、输出hash码、打印对象
1 package edu.freshen.api; 2 /*** 3 * 判断两个对象是否相等equals() 4 * 当引用不同,属性一致的对象时,需要重写equals(); 5 * @author john 6 * 如果是打印hashcode则也需要重写 7 */ 8 9 10 public class TestAPI { 11 public static void main(String[] args) { 12 Book b = new Book("J2SE",50f,"b001"); 13 Book c= new Book("Jsp",50f,"b002"); 14 Book d = new Book("J2SE",50f,"b001"); 15 16 System.out.println(b.equals(c)+"\n"+b.equals(d)); 17 System.out.println(b.hashCode()); 18 System.out.println(c.hashCode()); 19 System.out.println(d.hashCode()); 20 21 System.out.println(b);//打印对象需要重写toString()方法,否则打印的是对象的地址 22 System.out.println(c); 23 System.out.println(d); 24 } 25 } 26 class Book{ 27 private String name; 28 private float price; 29 private String isbn; 30 public Book( String name, float price,String isbn) { 31 super(); 32 this.isbn = isbn; 33 this.name = name; 34 this.price = price; 35 } 36 37 @Override 38 public boolean equals(Object obj) { 39 if(obj instanceof Book){ 40 Book b = (Book) obj; 41 return this.isbn.equals(b.getIsbn()); 42 }else{ 43 return false; 44 } 45 } 46 47 @Override 48 public int hashCode() { 49 return this.getIsbn().hashCode(); 50 } 51 52 @Override 53 public String toString() { 54 return this.name+","+this.price+","+this.isbn; 55 } 56 57 public String getIsbn() { 58 return isbn; 59 } 60 public void setIsbn(String isbn) { 61 this.isbn = isbn; 62 } 63 public String getName() { 64 return name; 65 } 66 public void setName(String name) { 67 this.name = name; 68 } 69 public float getPrice() { 70 return price; 71 } 72 public void setPrice(float price) { 73 this.price = price; 74 } 75 76 }
结果:
|