java基础经典总结
主要总结java基础知识。
itm_hadf
这个作者很懒,什么都没留下…
展开
-
模拟银行业务调度系统
【一】需求:模拟实现银行业务调度系统逻辑,具体需求如下: 银行内有6个业务窗口,1 - 4号窗口为普通窗口,5号窗口为快速窗口,6号窗口为VIP窗口。 有三种对应类型的客户:VIP客户,普通客户,快速客户(办理如交水电费、电话费之类业务的客户)。 异步随机生成各种类型的客户,生成各类型用户的概率比例为: VIP客原创 2012-05-24 20:31:56 · 1547 阅读 · 0 评论 -
模拟交通灯管理系统(掌握面向对象的经典方法)
【1】需求:【2】面向对象的分析和设计: 每条路线上都会出现多辆车,路线上要随机增加新的车,在灯绿期间还要每秒钟减少一辆车。 设计一个Road类来表示路线,每个Road对象代表一条路线,总共有12条路线,即系统中总共要产生12个Road实例对象。 每条路线上随机增加新的车辆,增加到一个集合中保存。 每条路线每隔一秒都会检查控制本原创 2012-05-23 23:00:33 · 1934 阅读 · 0 评论 -
java 高新技术【11.2】 动态代理类 编写类似 AOP 与 BeanFactory。初试Spring框架
1.切面(aspect): 要实现的交叉功能,是系统模块化的一个切面或领域。如日志记录。2.连接点: 应用程序执行过程中插入切面的地点,可以是方法调用,异常抛出,或者要修改的字段。3.通知: 切面的实际实现,他通知系统新的行为。如在日志通知包含了实现日志功能的代码,如向日志文件写日志。通知在连接点插入到应用系统中。4.切入点: 定义了通知应该应用在哪些连原创 2012-05-16 21:56:21 · 1510 阅读 · 2 评论 -
java 高新技术【11.1】 动态代理类 InvocationHandler对象 (静态代理 与 动态代理 区别)
1,客户端 请求 代理(proxy),这时,把Invocationhandler 以参数的形式 传递给 代理(proxy)2,客户端 在调用 代理(proxy)的其他方法,其他方法,也调用 (InvocationHandler)。3,而 InvocationHandler 就执行,invoke方法,而这时 invoke 就可以调用目标程序,来完成 业务逻辑实现。4,在 invoc原创 2012-05-15 23:24:32 · 1444 阅读 · 0 评论 -
java 高新技术【11】 java 代理类
1. 代理模式代理模式的作用是:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式一般涉及到的角色有:抽象角色:声明真实对象和代理对象的共同接口;代理角色:代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的原创 2012-05-14 23:32:00 · 1309 阅读 · 0 评论 -
java 高新技术【10.1】 编写和测试自己编写的解密类加载器
当父类的class文件找到时,就用父类的加载,而当父类的class文件找不到时,就用子类的加载。package com.itm.one;import java.io.ByteArrayOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io原创 2012-05-13 19:29:11 · 1155 阅读 · 0 评论 -
java 高新技术【10】 编写对class文件进行加密的工具类
package com.itm.one;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;public class MyClassLoader extends ClassLoader{ /**原创 2012-05-13 16:28:32 · 1373 阅读 · 0 评论 -
java 高新技术【9.2】 泛型类以及反射在泛型中的应用
package com.my.Util;import java.lang.reflect.Method;import java.lang.reflect.ParameterizedType;import java.lang.reflect.Type;import java.util.Collection;import java.util.Date;import java.util.原创 2012-05-13 15:01:26 · 1021 阅读 · 0 评论 -
Java高新技术 【9 】 JDK1.5 泛型
体验泛型(JDK1.5新特性)·JDK 1.5以前的集合类中存在什么问题?ArrayList collection = new ArrayList(); collection.add(1); collection.add(1L); collection.add("abc"); int i = (Integer)collection.get(1); //编译要原创 2012-03-30 15:45:58 · 1222 阅读 · 0 评论 -
java 高新技术【8】 注解
注解Annotation JDK1.5出现的新特性。在java.lang.annotation包中。 对于过时的语句,java会提示过时了,通过@SuppressWarnings("Deprecation")在DOS中取消提示,但Eclipse无法取消。这就是注解,相当于标记。编译器、开发工具、javac通过反射获得注解里的内容,进而明确应该做什么、不应该做什么。注解可以加原创 2012-05-10 21:04:45 · 1019 阅读 · 0 评论 -
java 高新技术【7】 内省,javabean,BeanUtils以及 java7的新特性
javabean的属性 是根据 set和get方法来 操作的,而不是根据 成员变量 来操作的。注意区别 属性 和成员变量 成员变量是私有的 看不见。一、 javabean 是什么?Bean的中文含义是“豆子”,顾名思义,JavaBean是指一段特殊的Java类,就是有默然构造方法,只有get,set的方法的java类的对象.专业点解释是:原创 2012-05-07 22:29:08 · 1354 阅读 · 1 评论 -
java 高新技术【6】 反射开发框架以及用 类加载器 管理资源和配置文件
//第一种方士:【把文件放在 项目名 下 】 尽量 面向父类 和 接口编程 。InputStream ips = new FileInputStream("config.properties");第二种 :com/itm/day1/config.properties 用类加载器的方式:在classpath 那些指定的目录下,逐一的去查找 你要加载的那个文件。 bin是用户原创 2012-05-06 22:24:20 · 1222 阅读 · 0 评论 -
java 高新技术【5】ArrayList_HashSet的比较及Hashcode分析
只有类的实例对象要被采用哈希算法进行存储和检索时,这个类才需要按要求覆盖hashCode方法。即使程序可能暂时不会用到当前类的hashCode方法,但是为他提供一个hashCode方法也不会有什么不好,没准以后什么时候有用到这个方法了,所以,通常要求hashCode方法和equals方法一并被同时覆盖。 //HashSet比较时hashCode方法和equals方法都用了HashSet原创 2012-05-06 18:11:27 · 1629 阅读 · 2 评论 -
(14)多线程与并发库之java5同步集合类的应用【包含jdk1.5新特性 ConcurrentHashMap】
第一部分:常用的集合类ArrayList、Map等在多线程操作同一对象时会发生不同步的线程而造成数据读取和写入错误;通常都是采用synchronized修饰符或Lock将那些方法括起来来确保它们在执行时不会被其他线程打扰;java5线程并发库为我们提供了一些相对于普通集合类的线程安全类,来自动解决线程同步的问题,如ConcurrentHashMap、ConcurrentSkipListMap、原创 2012-05-05 21:22:56 · 2020 阅读 · 0 评论 -
(13)多线程与并发库之java5阻塞队列(BlockingQueue)的应用----子线程循环10次,接着主线程循环100次,接着又回到子线程循环10次,接着再回到主线程循环100次,如此循环50次
首先复习一下:1,内部类的实例方法不能在静态中创建。2,成员变量 在什么情况情况下才有值啊?在创建了类的实例对象的时候,才分配空间。这时,就需要一个构造方法来进行赋值。3,static{ }这种语法,不需要创建实例对象 就可以运行,而bq1,bq2 是对象创建后的成员变量,对象里面的变量,所以不可应用静态代码块。 要用 这种匿名构造方法{ } 它的运行时机 在任原创 2012-05-05 19:52:44 · 12552 阅读 · 1 评论 -
java "回调【 Callback 】" 的理解和使用<借鉴>
对callback,暂时的理解是:A对象调用B接口的b方法,b方法又反过来调用A对象中的c方法。 A调用B接口时把自身给B接口,至于怎么处理,由B的实现类去做,不关A的事。 写了个例子,BadBoy,这类坏孩子喜欢打人,有个方法叫hit,hit只能对实现了Hitable的对象执行。这时候,BadBoy已经做完了自己的事,也就是已经打完人了,然后挨打的人肯定知道是谁打了自己,原创 2012-05-04 21:51:40 · 3733 阅读 · 0 评论 -
java 路径(相对路径和绝对路径)问题汇总【摘抄】
1.基本概念的理解绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:xyz est.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个URL绝对路径。相对路径:相对与某个基准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在Servlet中,"原创 2012-05-04 21:35:56 · 2954 阅读 · 2 评论 -
java 异常 【2】
1. 异常是指程序在运行时发生的错误或不正常的状况。在不支持异常处理的计算机语言中,这些状况需要又程序员进行检测和处理。 异常类在java.lang包中。 根据错误性质可将运行错误分为两类:致命性的错误(Error)和非致命的异常(exception)。2.编程错误的分类ü 编译错误(compilation error)ü 逻辑错误转载 2012-04-29 23:11:54 · 1286 阅读 · 0 评论 -
java 网络编程【10】 HTTP协议详解
【1】http协议概念,http1.0与http1.1 区别:1.http(Hypertext Transfer Protocol)超文本转出协议,从1990年开始就在www上广泛应用。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HT原创 2012-05-03 21:48:43 · 3641 阅读 · 0 评论 -
java 网络编程【9】 URL(统一资源定位符)
【1】URL的基本组成:协议,主机名,端口号,资源名。例如:http://www.it315.org:8080/index.html【2】 相对URL:例如:“/a.html” 、“./a.html”、“../../a.html”、“a.html”。绝对URL:即网页路径使用包含顶级域名在内的完整的URL。 如:www.xxx.com/page1/index.html是一个原创 2012-05-03 21:26:17 · 5535 阅读 · 0 评论 -
java 网络编程【8】 在TCP网络连接上传递对象
package com.HM.Objecttcp;import java.io.Serializable;public class Student implements Serializable{ int id; String name; int age; String department; public Student(int id, String name,int ag原创 2012-05-02 22:44:38 · 1353 阅读 · 0 评论 -
java 网络编程【7】 如何检测和解决端口冲突问题?
(1)使用netstat命令查看当前正在被使用的TCP端口号。(2)通过一个 配置参数 来指定TCP服务程序所用的端口号。if(args.length <1){ ss = new ServerSocket(8001); }else{ ss = enw ServerSocket(Integer.parseInt(args[0])); } 运行原创 2012-05-02 22:24:56 · 2198 阅读 · 0 评论 -
java 网络编程【6】 用UDP编写网络聊天程序 以及 TCP编程实例
输入内容后,按回车键即可。import java.awt.BorderLayout;import java.awt.Frame;import java.awt.List;import java.awt.Panel;import java.awt.TextField;import java.awt.event.ActionEvent;import java.awt.event.A原创 2012-05-02 20:42:12 · 1733 阅读 · 1 评论 -
java 网络编程【5】 完善的TCP服务器程序模型(一个实例)
题目:代码如下:package com.HM.tcp;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;/** (1) 利用 start 命令 启动三个线程。 (2) 利用 telnet 127.0.0.1 2008 (3) 输入 任意字符串。 按回原创 2012-05-01 20:10:22 · 2242 阅读 · 0 评论 -
java 网络编程【4】 TCP详解及其相关实例
(1)简单的TCP服务程序。(2)TCP服务器程序模型的编写要点(3)TCP网络程序的工作原理public class TcpServer { /** * @param args * @throws Exception */ public static void main(String[] args) throws Excepti原创 2012-05-01 20:01:21 · 1108 阅读 · 0 评论 -
java 网络编程【3】 UDP详解及其相关实例
【1】网路编程的基础知识【2】Socket讲解:上图为:Socket传递数据。UDP的几个方法java.net 类 DatagramPacketjava.lang.Object java.net.DatagramPacketpublic final class DatagramPacketexte原创 2012-04-30 22:28:07 · 1445 阅读 · 0 评论 -
java网络编程【2】 基于Socket的java网络编程(含实例)
1,什么是Socket网络上的两个程序通过一个双向的通讯连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket通常用来实现客户方和服务方的连接。Socket是TCP/IP协议的一个十分流行的编程界面,一个Socket由一个IP地址和一个端口号唯一确定。但是,Socket所支持的协议种类也不光TCP/IP一种,因此两者之间是没有必然联系的。在Java环境下,Sock原创 2012-04-30 22:03:49 · 1390 阅读 · 1 评论 -
java网路编程【1】 TCP与UDP 区别与比较
第一种解释:TCP和UDP都是传输层协议TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。UDP---用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它原创 2012-04-30 21:32:17 · 2331 阅读 · 0 评论 -
从JVM内存管理的角度谈谈静态方法和静态属性 和 java对象引用与JVM自动内存管理
试着从JVM的内存管理原理的角度来谈一下静态方法和静态属性的问题,不对的地方请指正。 (joezheng123.javaeye.com/blog/264695)JVM的内存分为两部分:stack和heap :stack(栈)是JVM的内存指令区。stack管理很简单,push一定长度字节的数据或者指令,stack指针压栈相应的字节位移;pop一定字节长度数据或者指令,stack指针转载 2012-03-22 15:12:32 · 4256 阅读 · 2 评论 -
再学Java基础(1)标识符,变量,数据类型。
工作了半年多了,虽然 在工作中 j2se 的知识用到的不多,因为是做的 企业级的开发。但是,与同事平时聊天,以及在工作中遇到了问题,才发现 自己的Java基础不是很强大,突然感觉到:自己是喜欢Java的,有打算做好Java这一块,所以,必须要把 java的基础 扎实了,就像是 练功夫一样,连马步都扎不稳 ,内功都练不好,怎么走的高和远。也会联想到,从自己接触Java以来的,到现在的原创 2012-03-24 21:54:15 · 1377 阅读 · 2 评论 -
java 集合框架【2】 经典解析部分是转载
package com.itm.connection;import java.util.ArrayList;import java.util.HashMap;import java.util.Map;import java.util.Map.Entry;public class ArrayListDemo { /** * @param args */ public sta原创 2012-03-26 16:04:16 · 2151 阅读 · 1 评论 -
再学Java基础(2)标识符,变量,数据类型。以及 if与for语句
这部分 为 java基础的理论部分,明白以及理解会用就可以了。特别注意for:先执行表达式1,在执行表达式2,然后 执行语句,再然后 执行表达式3.特别是 在执行表达三的时候 要根据题目或需求灵活应用。不要只知道:i++,还要知道:i+=2,i++,i++等等。关于:jdk1.5的for 今后 再说。敬请期待,呵呵。在算术运算符部分,需要特别注意的一个语法现象是“晋升”。晋升指原创 2012-03-25 19:45:54 · 1231 阅读 · 0 评论 -
再学Java 基础(3)类与对象【构造函数以及其执行顺序----经典讲解】重点!!!
类 与 对 象类与对象的概念:程序设计所面对的问题域——客观世界,是由许多事物构成的,这些事物既可以是有形的(比如一辆汽车),也可以是无形的(比如一次会议)。把客观世界中的事物映射到面向对象的程序设计中就是对象。对象是面向对象程序设计中用来描述客观事物的程序单位。客观世界中的许多对象,无论其属性还是其行为常常有许多共同性,抽象出这些对象的共同性便可以构成类。所以,类是对象的抽象和归纳,对象是类原创 2012-03-29 13:33:05 · 2281 阅读 · 1 评论 -
Java高新技术【1】 (静态导入-可变参数-增强for循环-基本数据类型的自动拆箱与装箱)
(1)静态导入·import 语句可以导入一个类或某个包中的所有类。·import static语句导入一个类中的某个静态方法或所有静态方法静态导入与编译器语法设置: import 可以导入一个类或者一个包下的所有的类,而import static 可以导入某个类中的一个静态方法或所有的静态方法。 我们调用静态方法都是 类名.方法的方式进行调用,有了import原创 2012-03-30 16:04:32 · 1472 阅读 · 0 评论 -
关于 文件操作 【JAVA_IO】的学习与总结。
BufferedWriter java.io 类 BufferedWriterjava.lang.Object java.io.Writer java.io.BufferedWriter所有已实现的接口: Closeable, Flushable, Appendable public class BufferedWriterextends W原创 2012-04-01 14:18:52 · 1057 阅读 · 0 评论 -
再学 iava基础(4)重载,重写,super,this,final关键字。
一:重载,:重载(Overloading) (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载Overloading是一个类中多态性的一种表现。 (2) Java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给原创 2012-04-02 13:58:20 · 1290 阅读 · 1 评论 -
再学 JAVA基础(5)对象转型,多态。【子类对象的实例化过程】
多态性是通过: 1 接口和实现接口并覆盖接口中同一方法的几不同的类体现的。2 父类和继承父类并覆盖父类中同一方法的几个不同子类实现的. 一、基本概念 多态性:发送消息给某个对象,让该对象自行决定响应何种行为。通过将子类对象引用赋值给超类对象引用变量来实现动态方法调用。java 的这种机制遵循一个原则:当超类对象引用变量引用子类对象时,原创 2012-04-02 17:35:47 · 1647 阅读 · 0 评论 -
再学java基础(6)关于 java IO 知识汇总。
import java.io.*;public class TestFileInputStream{ public static void main(String[] args){ int b = 0; FileInputStream in = null; try{ in = new FileInputStream("d:\\java\\TestFile原创 2012-04-03 14:09:49 · 1106 阅读 · 4 评论 -
java高新技术【3】(枚举总结)
【1】枚举·一:为什么要有枚举 (1)问题:定义星期几或性别的变量,该这么定义? 假设用1-7分别表示星期一到星期日,但有人可能会写成int weekday =0; (2) 枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译器就会报错。枚举可以让编译器在编译时.就可以控制源程序中填写的非法值,普通变量的方式在开发阶段无法实现这一目标。原创 2012-04-03 15:00:11 · 893 阅读 · 0 评论 -
java高新技术【2】 java中equals,hashcode 和 == 【经典】
如果 两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?不对,有相同的hash code。首先equals()和hashcode()这两个方法都是从object类中继承过来的。equals()方法在object类中定义如下:public boolean equals(Object obj) {return (this ==原创 2012-04-03 15:02:07 · 1126 阅读 · 0 评论