java基础
阿卧
不懂就问,不会就学。好好做学问
展开
-
TCP协议和UDP协议简单实例
TCP协议创建步骤:import java.net.*;import java.io.*;/**客户端负责发送数据:步骤:1、创建Socket对象,绑定IP和端口号2、设置键盘录入3、将内容写到服务器端*/class TCPClient{/**Socket(InetAddress address, int port) 创建一个原创 2015-07-08 09:52:33 · 1941 阅读 · 0 评论 -
字符流以及字符流缓冲区实例
这几天再次学习了IO的相关内容,感觉比以前的思路更加清晰了点。IO按照流的分类可以分为字节流(XXXStream)和字符流(XXXRreader、XXXWriter)。字符流主要是操作文本文件,这个在读取文本文件时,比较常用写。因此下面是关于字符流的一些读取方法。FileWriter的方法:import java.io.*;public class FileWriterDem原创 2015-09-19 22:39:16 · 798 阅读 · 0 评论 -
javaIO中的类使用方法
/**ObjectInputStream、ObjectOutputStream 通过在流中使用文件可以实现对象的持久存储。*/import java.io.*;public class ObjectStreamDemo{ public static void main(String args[])throws Exception{ //WriteObj(); ReadObj()原创 2015-10-11 22:58:53 · 585 阅读 · 0 评论 -
java多线程学习(一)之创建线程的两种方式
1、首先来了解一下线程和进程的概念 进程的概念: 进程是操作系统资源管理的最小单位,进程是一个动态的实体,他是程序的一次执行过程。也叫作一个控制单元 线程的概念: 线程是进程中独立的控制单元,线程控制着进程的执行。一个进程中至少有一个线程。 java VM(java虚拟机)在运行时启动了一个进程---java.exe 该进程在执行时,至少有一个线原创 2015-12-03 15:43:35 · 3181 阅读 · 0 评论 -
java多线程学习(五)---生产者消费者替换方案
java 在1.5之后提供了多线程升级解决方案 其中Synchronized被接口Lock所代替 Object中的wait notify notifyAll被 Condition接口中的方法所替代。Lock类的介绍:----其中,Lock 替代了 synchronized 方法和语句的使用 lock:获取锁 unlock:释放锁 newCondition:返回Cond原创 2015-05-19 16:59:58 · 872 阅读 · 0 评论 -
java多线程学习(六)---Thread其它方法
这篇主要是介绍java API中Thread类的其他方法的作用Thread类void interrupt() 中断线程。 当线程处于冻结状态时(即,wait()、sleep())执行方法受阻时,调用该方法,会将处于冻结状态的线程回复到运行状态。会出现一个InterruptException异常void setPriority() 设置线程的优先级。线程一共有10个优先级,最大原创 2015-12-05 02:38:02 · 603 阅读 · 0 评论 -
java线程学习(三)----死锁(面试常见)
延迟加载的单例多线程设计模式(懒汉式) 单例模式 是让调用者只产生一个唯一的对象。 分为饿汉式和懒汉式 饿汉式: class EHan{ private static final EHan e = new EHan(); public eHan(){} public static EHan getInstance(){原创 2015-05-19 17:05:10 · 1979 阅读 · 0 评论 -
java线程学习(四)---线程间的通信
线程之间的通信描述:存在两个线程,一个线程负责写入信息,另一个线程负责打印信息。model类Student name sex (私有类)线程:Input类,Output类。启动两个线程分别执行打印和写入操作.public class InputOutputDemo{ public static void main(String args[]){ Studen原创 2015-12-04 16:54:45 · 580 阅读 · 0 评论 -
使用JXL将List集合写入到Excel表中
首先导入jxl.jar到自己的工程。 jxl.jar下载地址:http://download.csdn.net/detail/u011521890/9467006 下面主要演示jxl导入、导出Excel表格 1、Excel导入到控制台调用Workbook 的静态方法getWorkbook(),获得WorkBook对象。获取Excel表中的工作表 获取行、列 sheet.原创 2016-03-20 11:13:27 · 7514 阅读 · 4 评论 -
java多线程(二)---线程的同步
我们知道多线程存在一些安全性问题,java为多线程提供给了一个解决多线程安全问题的关键字synchronized。同步的前提1、具有两个及以上的线程2、必须是多个线程使用同一个锁java提供了Synchronized来解决多线程的安全性问题。好处:可以解决多线程的安全问题弊端:每次都要判断锁,耗费系统资源。同步代码块synchronized(对象){//原创 2015-12-03 20:33:53 · 762 阅读 · 2 评论 -
synchronized的介绍
我对synchronized关键字算是很熟悉的了,但是有些时候一些概念还是没有搞明白,今天通过对wiki翻译以及博客的学习,从概念和类别上对其进行区分,并整理了一套自己的理解方式。从类别来区分从类别上可以将锁分为类级别锁和对象级别锁 1. 类级别锁,作用于整个类的的同步锁,例如Object.class 2. 对象级别锁,new Object()产生的锁,不同的实例所持有的锁是不同的原创 2017-09-12 21:42:48 · 494 阅读 · 0 评论 -
java线程池介绍(一)
今天看了一下java并发包中的API,这里做一个总结。 首先我们先看一下,java线程池相关的类以及他们的关系uml图 从类图和源码中可以了解到,Executors类是提供线程池创建的类,而Executor系列的类则是提供线程池所有用的行为。例如execute、submit、shutDown等 Executors类中提供四种创建线程池的静态方法。创建线程池的几种方式创建缓存线程池原创 2017-09-14 21:58:13 · 569 阅读 · 0 评论 -
java多线程方法的总结
interrupt、isinterrupted、interrupted的区别从结论上来区分interrupted() 是Thread类的静态方法,测试当前线程是否已经中断,线程的中断状态也是由该方法清除。isInterrupted() 测试线程Thread对象是否已经处于中断状态。但不具有清除功能interrupt() 中断线程的方法,并不能真正中断线程,只是设置了一个中断标志原创 2017-09-12 21:07:51 · 370 阅读 · 0 评论 -
java容器---Map扩展
Map集合的扩展:例子:一个公司类,包括人力资源部门和技术部门。每个部门包括姓名和年龄 要求存入到map集合中。 步骤: 利用嵌套的Map集合 第一个map集合存储公司部门和HashMap HashMap 中存储对应的部门人姓名和年龄 Map> company = Map> HashMap import j原创 2015-10-26 10:57:01 · 962 阅读 · 0 评论 -
java容器---Map集合的体系结构
Map集合的共性方法: K - 此映射所维护的键的类型 V - 映射值的类型 增 put(K key, V value) putAll(Map m) 删 remove(Object key) 判断 containsKey(Object key) 是否包含指定键 containsValue(Ob原创 2015-10-25 17:18:08 · 1505 阅读 · 0 评论 -
String类的一些内部实现方法
今天看了一下String类的一些基本用法,以后的时间需要不断巩固自己对java基础的理解,所以写下来让自己可以不断的反复复习。下面把这些简单的代码实现粘贴下来。import java.lang.String;public class StringDemos{ /** 答案一:1、模拟String类中trim方法 思路: 1.将字符串转换成字符数组 2.定义start 和原创 2015-08-11 12:23:57 · 2446 阅读 · 0 评论 -
Java中File类的例子
/**file对象是对文件的操作。具体方法有以下几类File 的构造方法: 1)创建File(String parent,String child) new出File对象之后,必须执行createNewFile()方法才能够创建出文件 2)separator 获取与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。1、创建:bo原创 2015-09-28 22:40:15 · 1569 阅读 · 0 评论 -
Java中转换流的相关用法
/**1、字节流与字符流之间的转换,称作转换流包括:InputStreamReader--->是字节流通向字符流的桥梁、OutputStreamWriter--->是字符流通向字节流的桥梁*/import java.io.*;import java.util.*;import java.text.*;public class TransStreamDemo{ public原创 2015-09-27 21:33:28 · 2266 阅读 · 0 评论 -
网络编程--多线程断点下载文件
今天学习了使用RandomAccessFile类实现多线程的下载。实现代码如下:ThreadDownLoad.javaimport java.io.InputStream;import java.io.RandomAccessFile;import java.net.HttpURLConnection;import java.net.URL;public class Threa原创 2015-10-16 09:00:32 · 537 阅读 · 0 评论 -
中文乱码的原因及解决方法
1、我们常用的编码表: ASCLL:美国标准信息交换码 --->用一个字节的7位可以表示ISO8859-1:拉丁码表、欧洲码表 --->用一个字节的8位来表示GB2312:中国的中文编码表GBK:中国的中文编码表的升级。 --->一个汉字用两个字节表示,每个字节的高位是1,所以汉字的byte形式是负数。Unicode:国际标准码,融合了多种原创 2015-10-19 15:33:32 · 552316 阅读 · 2 评论 -
Java基础实例
打印等腰三角形代码public class ForForTest{ public static void main(String []args){ for(int x=0;x for(int y=x+1;y System.out.print(" "); }原创 2015-06-28 23:55:09 · 774 阅读 · 0 评论 -
java递归获取文件列表和File的应用
/**在函数内部,调用自身方法的形式称之为递归。递归注意的事项:1、递归的约束条件2、递归的调用次数,防止内存溢出*/import java.io.*;public class DiguiDemo{ public static void main(String args[]){ //File f = new File("F:/JavaOracle/OOP");原创 2015-10-06 12:07:23 · 2051 阅读 · 0 评论 -
java容器--List集合中的体系结构分析(一)
Collection |--List:元素之间有序,且可以重复。 |--ArrayList: 使用数组存储的数据结构。增删慢,查询快。注意:此实现不是同步的 |--LinkedList: 使用链表存储的数据结构。增删快,查询慢。 |--Vector: 使用数组存储的数据结构。是同步到,访问速度较慢,被ArrayList所替代。 |--Set:元素之间无序,不原创 2015-10-20 22:23:55 · 1902 阅读 · 0 评论 -
java容器--Set集合中的体系结构分析(二)
Set集合: 元素存储无序(不按照存入的顺序存储)。且不能重复 |--HashSet: 底层数据结构是hash表。 |--TreeSet: 存入数据按照自然顺序排序 Set方法和Collection提供的方法一致。 HashSet提供的方法: HashSet是如何保证存储数据的唯一性呢?通过元素的两个方法来完成的,分别是hashCode和equa原创 2015-10-21 16:06:28 · 576 阅读 · 0 评论 -
java集合框架---泛型设计和出现
泛型的概念泛型概念:在JDK1.5以后出现新特性。用于解决安全问题,是一个类型安全机制。 好处: 1、将运行时期出现问题ClassCastException,转移到了编译时期, 方便于程序员解决问题。让运行产生的类转换异常出现在编译时期。 2、避免了强制转换麻烦 泛型的格式: 通过原创 2015-10-22 17:15:13 · 465 阅读 · 0 评论 -
properties类的相关用法
/**properties 是hashtable类的子类即,存储形式以键值对的形式来存储。*/import java.util.*;import java.io.*;public class PropertiesDemo{ public static void main(String args[])throws IOException{ //setAndGet(); // St原创 2015-10-08 22:05:59 · 379 阅读 · 0 评论 -
反射机制--调用构造函数和成员方法、制作帮助文档
今天学习了关于反射的相关知识,通过反射可以找到类中的构造方法和所有的成员方法。而并不了解这个类的构造的人可以很方便的运用反射机制。掌握发射主要了解这几个类,类位于java.long.reflect包中:Class类:代表一个 类Constructor类:代表累的构造方法Field类:代表类中的成员变量Method类:代表类的方法import java.lang.reflec原创 2015-07-01 21:24:54 · 1188 阅读 · 0 评论