jijiangpeng-CSDN博客

自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(221)
  • 资源 (2)
  • 收藏
  • 关注

转载 Java 什么是URL?及URL类和URLConnection类

在 Java 的 API 中的 java.net 包中包含一个 URL 类和一个 URLConnection 类。下面介绍这两个类的相关知识。URL 概念URL 是统一资源定位符(Uniform Resource Locator)的简称,它表示 Internet 上某一资源的地址。通过 URL 用户可以访问各种网络资源,比如常见的 WWW 以及 FTP 站点。浏览器可以通过解析给定的 UR...

2019-07-12 16:06:47 953 1

转载 Java UDP通信:Java DatagramSocket类和DatagramPacket类

在 TCP/IP 协议的传输层除了一个 TCP 协议之外,还有一个 UDP 协议。UDP 协议是用户数据报协议的简称,也用于网络数据的传输。虽然 UDP 协议是一种不太可靠的协议,但有时在需要较快地接收数据并且可以忍受较小错误的情况下,UDP 就会表现出更大的优势。下面是在 Java 中使用 UDP 协议发送数据的步骤。使用 DatagramSocket() 创建一个数据包套接字。 使用 ...

2019-07-12 16:06:15 1121

转载 Java TCP通信:Java ServerSocket类和Socket类

TCP 网络程序是指利用 Socket 编写的通信程序。利用 TCP 协议进行通信的两个应用程序是有主次之分的,一个是服务器程序,一个是客户端程序,两者的功能和编写方法不太一样。其中 ServerSocket 类表示 Socket 服务器端,Socket 类表示 Socket 客户端,两者之间的交互过程如下:服务器端创建一个 ServerSocket(服务器端套接字),调用 accept() ...

2019-07-12 16:05:00 1159

转载 Java InetAddress类及其常用方法

Internet 上的主机有两种方式表示地址,分别为域名和 IP 地址。java.net 包中的 InetAddress 类对象包含一个 Internet 主机地址的域名和 IP 地址。InetAddress 类提供了操作 IP 地址的各种方法。该类本身没有构造方法,而是通过调用相关静态方法获取实例。InetAddress 类中的常用方法如下表 所示。表1 InetAddress类的常用方法...

2019-07-12 16:04:24 1194

转载 Java网络编程基础知识

网络编程的目的就是直接或间接地通过网络协议与其他计算机进行通信。在 Java 语言中包含网络编程所需要的各种类,编程人员只需要创建这些类的对象,调用相应的方法,就可以进行网络应用程序的编写。要进行网络程序的编写,编程人员需要对网络传输协议、端口和套接字等方面的知识有一定的了解。下面就从这几个方面对网络编程的基础进行介绍。网络分类了解网络编程之前首先带领读者对计算机网络进行一些简单的了解。...

2019-07-12 16:03:36 96

转载 Java线程的优先级和执行顺序

在学习运算符时,读者知道各个运算符之间有优先级,了解运算符的优先级对程序幵发有很好的作用。线程也是如此,每个线程都具有优先级,Java 虚拟机根据线程的优先级决定线程的执行顺序,这样使多线程合理共享 CPU 资源而不会产生冲突。优先级概述在 Java 语言中,线程的优先级范围是 1~10,值必须在 1~10,否则会出现异常;优先级的默认值为 5。优先级较高的线程会被优先执行,当执行完毕,才...

2019-07-11 20:55:53 2389

转载 Java暂停/挂起线程(suspend())和恢复线程(resume())

暂停线程意味着此线程还可以恢复运行。在 Java 多线程中,可以使用 suspend() 方法暂停线程,使用 resume() 方法恢复线程的执行。suspend() 与 resume() 方法本节通过一个案例来介绍 suspend() 与 resume() 方法的用法。首先来看一下案例中使用到的 MyThread21 线程,代码如下所示。package ch14; pub...

2019-07-11 20:54:58 1430

转载 Java停止(终止)线程详解版

停止线程是在多线程开发中很重要的技术点,掌握此技术可以对线程的停止进行有效的处理。停止线程在 Java 语言中并不像 break 语句那样干脆,需要一些技巧性的处理。使用 Java 内置支持多线程的类设计多线程应用是很常见的事情,然而,多线程给开发人员带来了一些新的挑战,如果处理不好就会导致超出预期的行为并且难以定位错误。本节将讨论如何更好地停止一个线程。停止一个线程意味着在线程处理完任务之前...

2019-07-11 20:54:20 242

转载 Java yieId()方法如何使用

yieId() 方法的作用是放弃当前的 CPU 资源,将它让给其他的任务去占用 CPU 执行时间。但放弃的时间不确定,有可能刚刚放弃,马上又获得 CPU 时间片。例 1创建一个线程实现从 1 开始,共累加 5 千万次,要求在线程中输出开始运算时间、结束运算时间以及运算耗时时间。具体实现代码如下:package ch14; public class MyThread12 ex...

2019-07-11 20:53:28 250

转载 Java getId()方法的作用

getId() 方法的作用非常简单,就是取得正在运行线程的唯一标识。如下代码演示了 getId() 方法的使用:package ch14; public class Test15 { public static void main(String[] args) { Thread runThread=Thread.currentThread(); System.out.pr...

2019-07-11 20:52:49 4456

转载 Java sleep方法的作用(sleep())

sleep() 方法的作用是在指定的毫秒数内让当前“正在执行的线程”休眠(暂停执行)。这个“正在执行的线程”是指 this.currentThread() 返回的线程。例 1下面通过一个案例来理解使用 sleep() 方法判断线程是否活动的标准。假设 MyThread10 线程类的代码如下:package ch14; public class MyThread10 exte...

2019-07-11 20:51:40 336

转载 Java isAlive()方法的作用

isAlive() 方法的作用是判断当前的线程是否处于活动状态。什么是活动状态呢?活动状态就是线程已经启动且尚未终止。线程处于正在运行或准备开始运行的状态,就认为线程是“存活”的。例 1下面通过一个案例来理解 isAlive() 方法判断线程是否活动的标准。假设 MyThread08 线程类的代码如下:package ch14; public class MyThread0...

2019-07-11 20:51:04 5631

转载 Java curentThread()方法的作用

curentThread() 方法可返回代码段正在被哪个线程调用的信息。下面通过一个示例进行说明。例 1假设在主线程中有如下代码:public class Run1 { public static void main(String[] args) { //调用currentThread()方法输出当前线程名称 System.out.println(Thread.cu...

2019-07-11 20:50:33 764

转载 Java多线程的同步机制:synchronized

如果程序是单线程的,就不必担心此线程在执行时被其他线程“打扰”,就像在现实世界中,在一段时间内如果只能完成一件事情,不用担心做这件事情被其他事情打扰。但是,如果程序中同时使用多线程,好比现实中的“两个人同时通过一扇门”,这时就需要控制,否则容易引起阻塞。为了处理这种共享资源竞争,可以使用同步机制。所谓同步机制,指的是两个线程同时作用在一个对象上,应该保持对象数据的统一性和整体性。Java 提供 ...

2019-07-11 20:49:59 242

转载 Java非线程安全问题的解决方法

在上节《多线程之间访问实例变量》中出现了一个术语——非线程安全。非线程安全主要是指多个线程对同一个对象中的同一个实例变量进行操作时会出现值被更改、值不同步的情况,进而影响程序的执行流程。下面用一个示例来学习一下如何解决非线程安全问题。本案例模拟了多线程下的用户登录验证功能。首先编写一个类实现验证功能, LoginCheck 类的代码如下:package ch14; public ...

2019-07-11 20:49:26 370

转载 Java多线程之间访问实例变量

自定义线程类中的实例变量针对其他线程可以有共享与不共享之分,这在多个线程之间进行交互时是很重要的一个技术点。图 1 所示为不共享数据的示例,图 2 所示为共享数据的示例。图1 线程之间不共享数据实例图图2 线程间共享数据示例图例 1如图 1 所示,在不共享数据时每个线程都拥有自己作用域的变量,且多个线程之间相同变量名的值也不相同。下面创建一个示例演示这种特性。首先...

2019-07-11 20:48:52 682

转载 Java线程的生命周期及线程的几种状态

线程也具有生命周期,主要包括 7 种状态,分别是出生状态、就绪状态、运行状态、等待状态、休眠状态、阻塞状态和死亡状态,如图 1 所示。图1 线程生命周期图下面对线程生命周期中的 7 种状态做说明。出生状态:用户在创建线程时所处的状态,在用户使用该线程实例调用 start() 方法之前,线程都处于出生状态。 就绪状态:也称可执行状态,当用户调用 start() 方法之后,线程处...

2019-07-11 20:48:11 1403 1

转载 Java多线程的实现方式

在 Java 的 JDK 开发包中,已经自带了对多线程技术的支持,可以方便地进行多线程编程。实现多线程编程的方式主要有两种:一种是继承 Thread 类,另一种是实现 Runnable 接口。下面详细介绍这两种具体实现方式。继承 Thread 类在学习如何实现多线程前,先来看看 Thread 类的结构,如下:public class Thread implements Runnabl...

2019-07-11 20:47:40 112

转载 Java线程的概念:什么是线程?

世间万物都可以同时完成很多工作。例如,人体可以同时进行呼吸、血液循环、思考问题等活动。用户既可以使用计算机听歌,也可以编写文档和发送邮件,而这些活动的完成可以同时进行。这种同时执行多个操作的“思想”在 Java 中被称为并发,而将并发完成的每一件事称为线程。在 Java 中,并发机制非常重要,但并不是所有程序语言都支持线程。在以往的程序中,多以一个任务完成以后再进行下一个任务的模式进行,这样下一...

2019-07-11 20:47:10 144

转载 Java保存图书信息

在本章《Java字节流的使用》和《Java字符流的使用》中已经详细介绍了字节、字符输入/输出流的应用,利用输出流我们可以将一些数据保存到磁盘文件中,利用输入流可以读取磁盘文件中的内容。本节将综合使用文件输入/输出流完成存储图书并将图书信息再读取出来的功能。每到学校开学季都会新进一批图书教材,需要将这些图书信息保存到文件,再将它们打印出来方便老师查看。下面编写程序,使用文件输入/输出流完成图书信息...

2019-07-11 20:46:33 575

转载 Java字符流的使用:字符输入/输出流、字符文件和字符缓冲区的输入/输出流

尽管 java 中字节流的功能十分强大,几乎可以直接或间接地处理任何类型的输入/输出操作,但利用它却不能直接操作 16 位的 Unicode 字符。这就要用到字符流。本节将重点介绍字符流的操作。字符输入流Reader 类是所有字符流输入类的父类,该类定义了许多方法,这些方法对所有子类都是有效的。Reader 类的常用子类如下。CharArrayReader 类:将字符数组转换为字符输...

2019-07-11 20:46:00 936

转载 Java字节流的使用:字节输入/输出流、文件输入/输出流、字节数组输入/输出流

在本章的第一节《Java什么是输入/输出流?》中就提到 Java 所有表示字节输入流类的父类是 InputStream,它是一个抽象类,因此继承它的子类要重新定义父类中的抽象方法。所有表示字节输出流类的父类是 OutputStream,它也是一个抽象类,同样子类需要重新定义父类的抽象方法。下面首先介绍上述两个父类提供的常用方法,然后介绍如何使用它们的子类输入和输出字节流,包括 ByteArray...

2019-07-11 20:45:28 1465

转载 Java RandomAccessFile类:动态读取文件内容

所谓动态读取是指从文件的任意位置开始访问文件,而不是必须从文件开始位置读取到文件末尾。动态读取需要用到 Java 中的 RandomAccessFile 类,该类中有一个文件指针用于标识当前流的读写位置,这个指针可以向前或者向后移动。RandomAccessFile 类的构造方法有如下两种重载形式。RandomAccessFile(File file,String mode):访问参数 fi...

2019-07-11 20:44:24 637

转载 Java File类(文件操作类)详解

在操作文件之前必须创建一个指向文件的链接或者实例化一个文件对象,也可以指定一个不存在的文件从而创建它。Java 中的 File 类是文件和目录路径名的抽象形式。使用 File 类可以获取文件本身的一些信息,例如文件所在的目录、文件长度、文件读写权限等。本节将对 File 类进行详细介绍。File 类简介在 Java 中,File 类是 java.io 包中唯一代表磁盘文件本身的对象。Fil...

2019-07-11 20:43:39 1741

转载 Java系统流

每个 Java 程序运行时都带有一个系统流,系统流对应的类为 java.lang.System。Sytem 类封装了 Java 程序运行时的 3 个系统流,分别通过 in、out 和 err 变量来引用。这些变量的作用域为 public 和 static,因此在程序的任何部分都不需引用 System 对象就可以使用它们。System.in:标准输入流,默认设备是键盘。 System.out:...

2019-07-08 20:48:27 289

转载 Java流的概念:什么是输入/输出流?

在 Java 中所有数据都是使用流读写的。流是一组有序的数据序列,将数据从一个地方带到另一个地方。根据数据流向的不同,可以分为输入(Input)流和输出(Output)流两种。下面详细介绍什么是输入流和输出流,以及 Java 中流的类型及每种类型的相关类。什么是输入/输出流Java 程序通过流来完成输入/输出,所有的输入/输出以流的形式处理。因此要了解 I/O 系统,首先要理解输入/输出...

2019-07-08 20:46:55 2844

转载 Java在远程方法调用中运用反射机制

上一节详细介绍了如何使用 java.lang.reflect 包提供的 Constructor 类获取构造方法的信息、使用 Method 类获取成员方法的信息以及使用 Field 类获取成员变量的信息。本案例将介绍反射机制在网络编程中的应用,实现如何在客户端通过远程方法调用服务器端的方法。假定在服务器端有一个 HelloService 接口,该接口具有 getTime() 和 echo() 方...

2019-07-08 20:45:31 476

转载 Java反射在类中的应用:通过反射访问成员变量

通过下列任意一个方法访问成员变量时将返回 Field 类型的对象或数组。getFields() getField(String name) getDeclaredFields() getDeclaredField(String name)上述方法返回的 Field 对象代表一个成员变量。例如,要访问一个名称为 price 的成员变量,示例代码如下:objectgetDe...

2019-07-08 20:44:54 593

转载 Java反射在类中的应用:通过反射执行方法(获取方法)

要动态获取一个对象方法的信息,首先需要通过下列方法之一创建一个 Method 类型的对象或者数组。getMethods() getMethods(String name,Class<?> …parameterTypes) getDeclaredMethods() getDeclaredMethods(String name,Class<?>...parameter...

2019-07-08 20:44:19 7836

转载 Java反射在类中的应用:通过反射访问构造函数(方法)

为了能够动态获取对象构造方法的信息,首先需要通过下列方法之一创建一个 Constructor 类型的对象或者数组。getConstructors() getConstructor(Class<?>…parameterTypes) getDeclaredConstructors() getDeclaredConstructor(Class<?>...paramete...

2019-07-08 20:43:42 3000

转载 Java什么是反射机制?反射机制的概念

Java 反射机制是 Java 语言的一个重要特性,它在服务器程序和中间件程序中得到了广泛运用。在服务器端,往往需要根据客户的请求,动态调用某一个对象的特定方法。此外,在 ORM 中间件的实现中,运用 java 反射机制可以读取任意一个 JavaBean 的所有属性,或者给这些属性赋值。Java 反射机制主要提供了以下功能,这些功能都位于 java.lang.reflect 包。在运行时判断...

2019-07-08 20:43:09 781

转载 Java枚举(enum)详解:Java声明枚举类型、枚举(enum)类、EnumMap 与 EnumSet

枚举是一个被命名的整型常数的集合,用于声明一组带标识符的常数。枚举在曰常生活中很常见,例如一个人的性别只能是“男”或者“女”,一周的星期只能是 7 天中的一个等。类似这种当一个变量有几种固定可能的取值时,就可以将它定义为枚举类型。在 JDK 1.5 之前没有枚举类型,那时候一般用接口常量来替代。而使用 Java 枚举类型 enum 可以更贴近地表示这种常量。声明枚举声明枚举时必须使用 e...

2019-07-08 20:42:37 1077

转载 Java图书信息查询

前面详细介绍了 Java 中各集合的使用,像 Set 集合和 List 集合等,另外,还结合泛型讲解了一些高级应用。在实际开发中,泛型集合是较常用的,一般定义集合都会使用泛型的形式来定义。本节将使用泛型集合来模拟实现某图书管理系统的查询功能。在图书管理系统中为了方便管理图书,将图书划分为几个类别。每个类别下有很多图书,每本图书都有相对应的类别,这就具备了一对多的关系映射,即一个类别对应多本图书。...

2019-07-08 20:41:57 2577

转载 Java泛型详解:Java泛型集合、泛型类、泛型方法、泛型的使用

在 Java 1.5 之前没有泛型,通常需要使用强制类型转换的方式将一种数据类型转换为另一种数据类型,这种转换要求开发者对实际参数的类型具有可预知性。对于强制类型转换错误的情况,编译器可能不会提示错误,但是在运行时会出现异常,这是一个安全隐患。为了解决这一隐患,从 Java 1.5 开始提供了泛型。泛型可以在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高了代码的重用率。本节将详...

2019-07-08 20:41:22 6270 1

转载 Java Collection类:sort()升序排序、reverse()降序排序、copy()复制、fill()填充

Collections 类提供了许多操作集合的静态方法,借助这些静态方法可以实现集合元素的排序、填充和复制等操作。下面介绍 Collections 类中操作集合的常用方法。正向排序使用 Collections 类的静态方法 sort() 可以对集合中的元素进行升序排序。这要求列表中的所有元素都必须实现 Comparable 接口,而且所有元素都必须是使用指定比较器可相互比较的。sort(...

2019-07-08 20:40:40 5948

转载 Java Map集合详解

Map 是一种键-值对(key-value)集合,Map 集合中的每一个元素都包含一个键对象和一个值对象。其中,键对象不允许重复,而值对象可以重复,并且值对象还可以是 Map 类型的,就像数组中的元素还可以是数组一样。Map 接口主要有两个实现类:HashMap 类和 TreeMap 类。其中,HashMap 类按哈希算法来存取键对象,而 TreeMap 类可以对键对象进行排序。Map 接口中...

2019-07-08 20:40:03 380

转载 Java Set集合详解:HashSet类、TreeSet 类

Set 集合也实现了 Collection 接口,它主要有两个实现类:HashSet 类和 TreeSet类。Set 集合中的对象不按特定的方式排序,只是简单地把对象加入集合,集合中不能包含重复的对象,并且最多只允许包含一个 null 元素。HashSet 类HashSet 类是按照哈希算法来存储集合中的元素,使用哈希算法可以提高集合元素的存储速度,当向 Set 集合中添加一个元素时,H...

2019-07-08 20:39:34 747

转载 Java List集合:ArrayList类、LinkList类、ArrayList类和LinkList类的区别

List 接口实现了 Collection 接口,它主要有两个实现类:ArrayList 类和 LinkedList 类。在 List 集合中允许出现重复元素。与 Set 集合不同的是,在 List 集合中的元素是有序的,可以根据索引位置来检索 List 集合中的元素,第一个添加到 List 集合中的元素的索引为 0,第二个为 1,依此类推。ArrayList 类ArrayList 类提供...

2019-07-08 20:38:57 524

转载 Java Collection接口

Collection 接口是 List 接口和 Set 接口的父接口,通常情况下不被直接使用。Collection 接口定义了一些通用的方法,通过这些方法可以实现对集合的基本操作。因为 List 接口和 Set 接口继承自 Collection 接口,所以也可以调用这些方法。本节将介绍 Collection 接口中常用的方法,如表 1 所示。表1 Collection接口的常用方法 方...

2019-07-08 20:38:23 167

转载 Java集合类的概念

Java 的所有集合类都位于 java.util 包,其中提供了一个表示和操作对象集合的统一构架,包含大量集合接口,以及这些接口的实现类和操作它们的算法。一个集合是一个对象,但它表示一组对象,Java 集合中实际存放的是对象的引用值,不能存放基本数据类型值。集合中的接口集合框架是一个类库的集合,包含实现集合的接口。接口是集合的抽象数据类型,提供对集合中所表示的内容进行单独操作的可能。...

2019-07-08 20:37:51 143

新浪新闻客户端源码

新浪新闻客户端源码

2016-07-19

Android高仿滴滴打车等软件项目源码

2016-07-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除