- 博客(11)
- 收藏
- 关注
转载 Socket编程学习
Socket的服务器端需要在某个端口上开启服务器类型的Socket,即java.net.ServerSocket,通过它的accpet方法等待并接收客户端的请求,返回的是一个java.net.Socket对象,如果一直没有客户端的请求,那么accept方法将会一直等待。 Socket客户端根据服务器的IP地址(域名)和端口号创建一个Socket对象,连接服务器。 服务器端...
2016-07-25 20:38:00 108
转载 io流之写文件
用Java程序写文件有多种方式,对于不同类型的数据,有不同的写方法。写文件的关键技术点如下: 1.FileOutputStream打开文件输出流,通过write方法以字节为单位写文件,是写文件最通用的方法,能写任何类型的文件,特别适合写二进制数据文件。 2.OutputStreamWriter打开文件输出流,通过write方法以字符为单位写文件,能够将字符数组和字符串...
2016-07-21 20:53:00 77
转载 文件的输入流
实现读取文件有多种方式,针对不同的文件类型,有不同的读取方法。读取文件的关键技术点如下: 1.用FileInputStream打开文件输入流,通过read方法以字节为单位读取文件,是最通用的读取文件的方法,能读取任何文件,特别适合读取二进制文件,如图片、声音、视频文件。 2.用InputStreamReader打开文件输入流,通过read方法以字符为单位读取文件,常用于读...
2016-07-20 21:06:00 119
转载 线程死锁问题
一、定义 线程死锁是指由于两个或者多个线程互相持有对方所需要的资源,导致这些线程处于等待状态,无法前往执行。当线程进入对象的synchronized代码块时,便占有了资源,直到它退出该代码块或者调用wait方法,才释放资源,在此期间,其他线程将不能进入该代码块。当线程互相持有对方所需要的资源时,会互相等待对方释放资源,如果线程都不主动释放所占有的资源,将产生死锁。二、实例 ...
2016-07-19 20:48:00 67
转载 线程池学习
新建一个线程并启动,开销会很大,因为运行线程需要的资源比调用对象方法需要的资源多得多。在很多情况下,线程被用于执行一类任务,而这类任务数量很多,发生的时间分布不均,如果为每个新任务都启用一个新线程来执行,则开销会太大,可以采用一种性能优化技术,就是使用线程池。 将若干执行任务的线程放在池中,当有任务要执行时,从池中取出一个空闲线程来处理任务,处理完任务后,再讲线程对象放入池中。...
2016-07-18 20:21:00 64
转载 java线程中生产者与消费者的问题
一、概念 生产者与消费者问题是一个金典的多线程协作的问题.生产者负责生产产品,并将产品存放到仓库;消费者从仓库中获取产品并消费。当仓库满时,生产者必须停止生产,直到仓库有位置存放产品;当仓库空时,消费者必须停止消费,直到仓库中有产品。 解决生产者/消费者问题主要用到如下几个技术:1.用线程模拟生产者,在run方法中不断地往仓库中存放产品。2.用线程模拟消费者,在run方法中不...
2016-07-14 20:59:00 86
转载 java线程学习
一、线程的创建 java中创建线程有两种方式:继承Thread类和实现Runnable接口。 1.继承Thread类 Java语言中定义了线程类Thread,用户可以通过继承Thread类,覆盖其run()方法创建自己的线程类,线程执行的代码都包含在run方法中。 public ClassName extends Thread{ public void ...
2016-06-30 23:38:00 59
转载 包装类与自动拆装箱
一、包装类 包装类定义:即对象类型,采用面向对象的方法对数据类型进行了封装。每一个包装类都对应着一个基本数据类型,如:Boolean、Char、Byte、Short、Integer等对应着boolean、char、byte、short和int等,并且其具有相应的属性和方法。 作用:①在进行数据类型转换时非常方便;如字符类型的数字“243”,如要转换成整型用包装类就非常方便。...
2016-06-28 23:26:00 92
转载 抽象类与接口
一、抽象类 抽象类是指包含了抽象方法的类。其中,抽象方法只声明方法名称,而不指明方法体。抽象类如果拥有未实现的方法,不能被实例化。abstract class AbstractClass{ public void test1(){ System.out.println("this is test1"); } public abstract void tes...
2016-06-27 22:53:00 60
转载 java三大特性性:封装、继承和多态
一、封装 封装是指隐藏对象的属性及实现细节,对外仅提供接口可见。封装实现了信息隐藏,利于软件复用。其优点是达到了模块化的标准,从而提高了代码的复用程度。在某种程度上,封装也大大改善了软件开发的可维护性,降低了构建复杂软件系统的风险。public class TV { private int volume; private int color; public int ...
2016-06-27 22:17:00 67
转载 return、break、continue的区别
一、定义return:语句用于终止当前方法运行,返回到调用该方法的语句处。如有返回值,则在return后面提供相应的返回值。break:其主要用于循环语句和switch语句,其作用均是强行终止语句的执行。continue:主要用于循环语句中,作用是跳过本次循环,继续执行下一次。二、区别 从定义中可看出,return与break、continue的区别较大,retur...
2016-06-23 23:14:00 127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人