
学习实战完全笔记
文章平均质量分 82
西召
公众号「西召」作者,关于技术,还有阅读,写作和思考...
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JavaSE学习实战完全笔记--集合的实现细节--Set和Map
如果你看过HashSet的源代码的话,会发现HashSet是通过封装一个HashMap对象来实现对元素的存储的。下面是一个演示HashSet用法的完整代码与详细注释:(请使用JDK1.7及以上版本测试)2.如果你理解了上面的例子,那么我们就可以很轻松地利用Set集合实现自己的Map集合,这对于理解集合的特性与原理非常有帮助。下面是一个演示将一个Set集合拓展成Map集合的完整代码与详细注释:原创 2015-04-10 13:33:28 · 592 阅读 · 0 评论 -
Object(所有类的超类)一些有用的方法讲解与实例演示
Object是所有类的始祖,java中的每个类的都是它拓展而来的。 Object的euqals方法、hashCode方法、getClass方法和toString方法在操作对象时是非常有用的方法。原创 2015-04-17 19:12:54 · 776 阅读 · 0 评论 -
命令行参数与数组的实例
每个java应用程序都有一个带String[] args参数的main方法,这个参数表明main方法将接收一个字符串数组,也就是命令行参数。原创 2015-04-21 19:39:51 · 3775 阅读 · 0 评论 -
JavaEE完全实战详解笔记--在Eclipse中创建一个简单的web项目
下面演示了Eclipse开发JavaEE的通用步骤--配置一个简单的web应用,不同版本的Eclipse可能略有不同,但是基本不会有太大出入。 这里就以"eclipse-jee-luna-SR2-win32"+“apache-tomcat-8.0.21-windows-x86”版本为例,(截止2015年5月份的最新版): (详细过程看图)原创 2015-04-27 10:33:17 · 16059 阅读 · 0 评论 -
Lambda表达式--Java8的新功能案例详解(2) Lambda表达式的方法引用
Lambda表达式与内部类相比有很多限制,比如只能为函数式接口创建实例,但是Lambda表达式大大简化了代码的书写。Lambda表达式的方法引用主要分为下面几类:1.引用类方法2.引用特定对象的实例方法3.引用某类对象的实例方法4.引用构造方法原创 2015-04-27 11:46:16 · 1317 阅读 · 0 评论 -
JSE深入探究——反射初步
Java程序中的各个Java类属于同一类事物,描述这类事物的Java类名就是Class。 反射就是把Java类中的各种成分映射成相应的java类。例如,一个Java类中用一个Class类的对象来表示,一个类中的组成部分:成员变量,方法,构造方法,包等等信息也用一个个的Java类来表示,就像汽车是一个类,汽车中的发动机,变速箱等等也是一个个的类。表示java类的Class类显然要提供一系列的方法,来获得其中的变量,方法,构造方法,修饰符,包等信息,这些信息就是用相应类的实例对象来表示,它们是Fi原创 2015-04-28 14:25:08 · 830 阅读 · 3 评论 -
Apache POI:Java程序读写Microsoft Office格式文档——简单完整实例讲解
Apache POI简介 Apache POI是Apache软件基金会的开放源码函式库,官方名称为:Apache POI - the Java API for Microsoft Documents,POI提供API给Java程序对Microsoft Office格式文档读和写的功能。 .NET的开发人员则可以利用NPOI (POI for .NET) 来存取 POI 的功能。原创 2015-05-16 17:21:56 · 4287 阅读 · 1 评论 -
实现接口创建线程
多线程则扩展了多进程的概念,使得同一个进行可以同时并发处理多个任务。线程(Thread)也被称作轻量级进程(Ligheweight Process),线程是进程的执行单元。就象进程在操作系统中的地位一样,线程在程序中是独立的、并发的执行流。当进程被初始化后,主线程就被创建了。对于绝大多数的应用程序来说,通常仅要求有一个主线程,但我们也可以在该进程内创建多条顺序执行流,这些顺序执行流就是线程,每条线程也是互相独立的。 线程是进程的组成部分,一个进程可以拥有多个线程,一个线程必须有一个父进程。原创 2015-05-14 17:52:15 · 2110 阅读 · 0 评论 -
程序设计方法概述:从面相对象到面向功能到面向对象
面向功能的程序设计方法、结构化程序设计方法、面向数据流的处理方式与结构化分析(Structrued Analysis,即SA)、结构化编程(Structrued Program,即SP)、结构化设计 (Structrued Design,即SD) VS 面向对象程序分析(OOA)、面向对象程序设计(OOD)、面向对象程序开发(OOP)原创 2015-05-20 19:16:55 · 4408 阅读 · 1 评论 -
Java对象序列化与反序列化(1)
序列化机制允许将实现序列化的Java对象转换为字节序列,这些字节序列可以被保存在磁盘上,或通过网络传输,以备以后重新恢复成原来的对象。序列化机制使得对象可以脱离程序的运行而独立存在。 对象的序列化(Serialize)指将一个Java对象写入IO流中,与此对应的是,对象的反序列化(Deserialize)则指从IO流中恢复该Java对象。如果需要让某个对象可以支持序列化机制,必须让它的类是可序列化的(serializable),为了让某个类是可序列化的,该类必须实现如下两个接口之一: (1)Serial原创 2015-05-15 13:00:26 · 933 阅读 · 0 评论 -
流与文件:NIO.2的介绍和使用
传统的Java里,只有一个File类,即代表文件,又代表目录。Java 7新增了如下API来访问文件 Path - 接口,代表一个平台无关的目录。提供了大量的方法来操作目录。 Paths - 工具类。所有方法都是static的。 Files - 操作文件的工具类。提供了大量的方法来操作文件。该类所包含的大量方法可能与我们日常一般的期望有些出入。 早期的Java只提供了File类来访问文件,其功能有限且性能不高,NIO.2提供了Path接口以及Paths和Files工具类来访问文件系统。原创 2015-05-21 19:35:39 · 1206 阅读 · 0 评论 -
Java8增加功能--Effectively final 功能
java8新增了很多功能,可以大大简化代码,这个系列将会一一辅助代码加以介绍。 局部内部类和匿名内部类访问的局部变量必须由final修饰,java8开始,可以不加final修饰符,由系统默认添加。java将这个功能称为:Effectively final 功能。 下面是完整掩饰代码(至少使用jdk1.8版本):原创 2015-04-16 17:00:54 · 17498 阅读 · 1 评论 -
接口与设计模式
Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。 接口体现了规范与实现分离的设计哲学,面向接口的设计模式也日益深入人心,下面提供了几个完整的例子,演示了接口的优秀设计,并介绍了java常用的两种设计模式:工厂模式和命令模式。原创 2015-04-16 11:35:49 · 1861 阅读 · 2 评论 -
JavaSE--学习实战完全笔记--增强版的线程创建方式--实现Callable接口
JDK1.5提供的Callable的call()方法,可以有泛型、抛出异常、有返回值。实现Runnable接口,Thread类可以把run方法包装成线程执行体,但不能把其他方法包装成线程执行体。 至此我们知道,创建线程有三种方法,即直接继承Thread类和实现Callable接口或Runnable接口。那么当我们需要创建线程时应该如何选择呢? 一般的,直接继承Thread类编程简单,但不能继承其他类。通过实现Callable接口或Runnable接口,还可以继承其他类,并且,多个原创 2015-04-10 14:49:30 · 621 阅读 · 0 评论 -
学习实战完全笔记--JavaSE----流与文件(Streams and Files)
流与文件的定义 :一个对象,可以从中读入一组字节,就叫输入流;一个对象,可以从中输出一组字节,就叫输出流。 ( In the Java API, an object from which we can read a sequence of bytes is called an input stream. An object to which we can write a sequence of bytes is called an output stream.) java.io中的类都将相对路径以用原创 2015-04-10 13:49:49 · 722 阅读 · 0 评论 -
学习实战全笔记--JavaSE--包装类的特性--用法示例(JDK8)
我们知道Java是面向对象的语言,但是为了照顾程序员对以前编程语言的习惯,增加了八种基本数据类型(他们不是对象)如下: <1> 分类与初值: (六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型) 1、整数:包括int,short,byte,long ,初始值为0 2、浮点型:float,double ,初始值为0.0 3、字符:char ,初始值为空格,即'' ",如果输出,在Console上是看不到效果的。原创 2015-04-11 11:07:43 · 876 阅读 · 0 评论 -
JSE学习笔记---关于数据类型那点事儿
本文总结了三个不容易被注意到的三个数据类型的特殊用法, 1. 二进制 java7以后,可以用前缀”0b“表示二进制数,也可以在数字之间,为数字加下划线分割,方便阅读。 例如: 0b1110_1010_0101=0b111010100101 2. 浮点数 浮点数不适用于金融等精确计算中,原因是浮点值采用二进制系统表示,而二进制系统无法精确表示1/10, 正如十进制无法精确表示1原创 2015-04-11 15:27:09 · 746 阅读 · 1 评论 -
Lambda表达式--Java8的新功能案例详解(1)
Lambda表达式支持将代码块作为方法参数,Lambda表达式允许使用更简洁的代码来创建只有一个抽象方法的接口的实例。 Lambda表达式代替匿名内部类创建对象时,Lambda表达式的代码块将会代替实现抽象方法的方法体,Lambda表达式就相当于一个匿名方法。Lambda表达式的主要作用就是代替匿名内部类的繁琐语法。 .............. lambda表达式允许你通过表达式来代替功能接口。 函数编程在C#、Python、JavaScript中都得到充分体现。而原创 2015-04-23 16:44:37 · 1192 阅读 · 1 评论 -
JSE综合练习(1)----网络聊天系统--基于TCP协议的群聊系统
如果你经过了一段时间的JavaSE学习,对面向对象、流与文件、多线程、网络、GUI等有所了解,那么你可以试着做几个综合性的程序练练手. 首先,模仿别人的思路和代码;然后,独立设计完成;在此基础之上,使自己的代码逐步完善、功能不断强大——这就是一个总结与升华的过程,是学习遭遇瓶颈之后的必要阶段。 在这里笔者会把自己练习的项目源代码、注释、开发工具、相关知识、经验等分享给大家,希望可以为大家提供帮助,也希望可以获得大家的批评与指导。 爱Java,爱Share。i java,i原创 2015-04-12 18:22:34 · 891 阅读 · 0 评论 -
随机读取文件--RandomAccessFile的应用实例
RandomAccessFile是用来访问那些保存数据记录的文件的,这样你就可以用seek( )方法来访问记录,并进行读写了。这些记录的大小不必相同;但是其大小和位置必须是可知的。RandomAccessFile竟然会是不属于InputStream和OutputStream类系的。实际上,除了实现DataInput和DataOutput接口之外(DataInputStream和DataOutput原创 2015-04-12 20:46:05 · 1038 阅读 · 0 评论 -
Oracle数据库游标案例讲解与源码 (2)
关于此案例的详细分析,请参看 《Oracle数据库游标案例讲解与源码》一文http://blog.youkuaiyun.com/sinat_26342009/article/details/45199827案例要求: 利用游标转换两张表的数据。 首先,将满足以下三个条件的数据插入到一张新表(productinfo_tmp)中 : 价格大于1000 产地为“中国”或“杭原创 2015-04-23 16:14:01 · 1473 阅读 · 0 评论 -
final关键字---不可变类
不可变类:即该类在创建之后其实例变量是不可变的(immutable). 其中有两种特殊情况: 1.不可变类包含的引用类型成员变量是可变类的 2.如果系统需要反复使用相同的不可变类的实例,如果反复创建相同的对象会增加系统的开销,此时考虑使用缓存。原创 2015-04-13 11:56:34 · 521 阅读 · 0 评论 -
JSE项目实战---基于UDP与Swing的一对一网络聊天系统
Java有非常好的网络支持,UDP由于其资源消耗少、容错性高,在视频会议、网络游戏的领域有很广泛的应用。原创 2015-04-14 15:07:43 · 1414 阅读 · 1 评论 -
HTML5的表单验证实例
HTML5新增加的表单验证可以大大减少你对JavaScript代码的依赖,并且进行丰富的客户端校验,下面提供两个例子。1.HTML5客户端校验:checkValidity方法checkValidity方法可以用于检验你的输入是否合法,合法时返回true,否则返回false。HTML5客户端校验:checkValidity方法 var check=fun原创 2015-05-17 23:52:33 · 4721 阅读 · 0 评论