
Java菜鸟入门
文章平均质量分 68
咖啡Q伴侣
纸上得来终觉浅,绝知此事要躬行! 代码虐我千百遍,我视代码如初恋!
展开
-
第一篇:JAVA之基础学习线路图
一、学习建议不要盲目的吹毛求疵地扣问题或者语法的细枝末节,应付考试可以,但是工程实践中不可取;上课认真听,灵活使用。主要任务,听懂,掌握,记笔记;a. 记笔记(重要内容、核心内容)------> 回顾;b. 记案例代码 --------> 通读 ---------> 写注释;c. 知识点牢牢地印在脑海里 ---------> 反复 ---------> 记忆;树原创 2017-08-03 10:47:10 · 379 阅读 · 0 评论 -
第二十三篇:JAVA之IO流系统详解
摘要:Java 流在处理上分为字符流和字节流。字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符、字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组。Java 内用 Unicode 编码存储字符,字符流处理类负责将外部的其他编码的字符流和 java 内 Unicode 字符流之间的转换。而类 InputStreamReader 和 Out原创 2017-08-14 13:00:42 · 342 阅读 · 0 评论 -
第二十四篇:JAVA多线程机制之线程概念
在操作系统中,一个独立的正在运行的程序称为进程,通常一个程序又被分为称作任务的小块,任务又可以进一步分为称作线程的更小的块。如果一个程序多于一个线程同时执行,就可以称为多线程并行。 一个线程被定义为一个单一的连续控制流,线程也可以成为执行环境或者轻量级程序。当一个程序发起之后,会首先生成一个缺省的线程,这个线程被称作主线程,就是由main方法引导进入的线程,main方法调用的方法结构会在这个主原创 2017-08-14 13:04:07 · 440 阅读 · 0 评论 -
第二十五篇:JAVA多线程机制之线程创建
在Java中创建线程有两种方式,一种是继承Thread,另一种是实现Runnable接口,Thread实际上也实现了Runnable接口。Thread构造方法方法名说明Thread()分配新的 Thread 对象Thread(Runnable target)分配新的 Thread 对象原创 2017-08-14 13:07:32 · 271 阅读 · 0 评论 -
第十五篇:JAVA集合框架之Set接口实现类
java.util.HashSet此类实现 Set 接口,由哈希表(实际上是一个 HashMap 实例)支持。它不保证 set 的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用 null 元素。这是我们最常用的Set接口的实现类。构造方法方法名说明HashSet()构造一个新的空 set,其底层 HashMap 实例原创 2017-08-14 09:15:19 · 468 阅读 · 0 评论 -
第三十五篇:JAVA 1.5,1.6,1.7,1.8新特性
java1.5新特性1、自动装箱和拆箱功能(1)自动装箱和拆箱是由编译器帮助完成从基本数据类型和基本数据类型的包装类之间的转换。 ①基本数据类型:int,long,double,float,boolean,char,byte,short ②基本数据类型包装类:Integet,Long,Double,Float,Boolean,Character,Byte,Short(2)自动装原创 2017-08-14 13:31:48 · 529 阅读 · 0 评论 -
第三十四篇:JAVA中枚举类型enum的使用
最近跟同事讨论问题的时候,突然同事提到我们为什么java 中定义的常量值不采用enmu 枚举类型,而采用public final static 类型来定义呢?以前我们都是采用这种方式定义的,很少采用enum 定义,所以也都没有注意过,面对突入起来的问题,还真有点不太清楚为什么有这样的定义。既然不明白就抽时间研究下吧。Java 中的枚举类型采用关键字enum 来定义,从jdk1.5才有的新类型,原创 2017-08-14 13:28:38 · 328 阅读 · 0 评论 -
第三十三篇:JAVA中的反射机制
反射,当时经常听他们说,自己也看过一些资料,也可能在设计模式中使用过,但是感觉对它没有一个较深入的了解,这次重新学习了一下,感觉还行吧! 一,先看一下反射的概念: 主要是指程序可以访问,检测和修改它本身状态或行为的一种能力,并能根据自身行为的状态和结果,调整或修改应用所描述行为的状态和相关的语义。 反射是Ja原创 2017-08-14 13:26:02 · 263 阅读 · 0 评论 -
第三十二篇:JAVA网络编程之UDP
上一篇博客中使用的Socket是基于TCP协议的,这一篇为大家简单介绍一下UDP协议。 UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。 UDP协议全称原创 2017-08-14 13:22:14 · 330 阅读 · 0 评论 -
第三十一篇:JAVA网络编程之Socket
在前面博客中使用到的HttpsURLConnection实际上是基于HTTP协议完成获取网络资源的,而HTTP协议又是基于TCP/IP协议的,这一片博客将介绍在java中如何使用TCP/IP协议进行服务端与客户端之间的通信。 TCP/IP,Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议原创 2017-08-14 13:19:44 · 492 阅读 · 0 评论 -
第三十篇:JAVA网络编程之模拟表单提交
这一篇将使用HttpURLConnection来模拟一个表单的提交。在B/S架构的系统中,请求时通过浏览器与服务端进行交互的,提交请求参数时使用form表单进行提交,但是有很多时候,我们需要在程序中直接调用HTTP接口,同时需要传递一些参数,那么这个时候我们就可以通过使用HttpURLConnection来模拟表单的提交过程。首先,我们可以对请求进行封装import java.ut原创 2017-08-14 13:18:13 · 384 阅读 · 0 评论 -
第二十九篇:JAVA网络编程之获取网络资源
在应用程序开发过程中,很多时候我们会用网络资源,比如接口调用等。Java中也提供了相关的类去处理网络资源,而我们在处理网络资源的时候,用到的最多的就是IO,所以对IO还不了解的可以先看看前面的博客。 Java中,处理网络资源、网络通信所需要的类都在java.net包中。URL类URL代表一个统一资源定位符,它是指向互联网“资源”的指针。资源可以是简单的文件或目录,也可以是对更为原创 2017-08-14 13:16:47 · 1238 阅读 · 0 评论 -
第二十八篇:JAVA多线程机制之死锁
同步特性使用起来非常方便,功能很强大。但有的时候考虑不周的话有可能出现线程死锁。死锁主要是多个线程争抢资源造成的。 下面通过一个例子演示死锁:class Resource{ private int res = 0; public int getRes() { return res; } public void setRes(int res)原创 2017-08-14 13:11:23 · 278 阅读 · 0 评论 -
第二十七篇:JAVA多线程机制之暂停、恢复和停止
在JDK1.2以前的版本如果要实现线程的暂停、恢复和停止的方法分别是suspend()、resume()、stop()。但是从JDK1.2以后这些方法已经被遗弃,因为它们有可能造成严重的系统错误和异常。 首先suspend()方法不会释放线程所占用的资源。如果使用该方法将某个线程挂起,则可能会使其他等待资源的线程死锁。而resume()方法本身并无问题,但是不能独立于suspend()方法存在原创 2017-08-14 13:10:15 · 933 阅读 · 0 评论 -
第二十六篇:JAVA多线程机制之同步与互斥
一个多线程的程序,两个或者多个线程可能需要访问同一个数据资源。这时就必须考虑数据安全的问题,需要线程互斥或者同步。线程的互斥当多个线程需要访问同一资源时,要求在一个时间段内只能允许一个线程来操作共享资源,操作完毕后别的线程才能读取该资源,这叫线程的互斥。我们需要使用synchronized来给共享区域加锁,确保共享资源安全。 如果一个线程调用了某个对象的synchronized原创 2017-08-14 13:08:48 · 310 阅读 · 0 评论 -
JavaSE入门之路汇总
到这一篇博客为止,Java的基础部分已经介绍完了,这一篇为基础部分的汇总。JAVA基础学习线路图Java基础学习线路图JAVA介绍与基本语法Java之基础语言概述Java之基本语句JAVA面向对象Java面向对象(上)Java面向对象(中)Java面向对象(下)JAVA常原创 2017-08-23 17:15:43 · 490 阅读 · 0 评论 -
第三十八篇:JAVA访问数据库之增删改查(CRUD)
上一篇博客介绍了如何使用Java连接数据库,那么这一篇将继续为大家介绍如何使用JDBC对数据库的增删改查(CRUD)操作。 这一篇博客中的示例将使用上一篇中生成的H2数据库文件。查询查询在数据库的操作中是很重要的,我们把数据保存在数据库中,就是为了我们在需要的时候能够快速、高效的查询出来。/** * 查询 * * @throws Exception原创 2017-08-23 09:38:28 · 530 阅读 · 0 评论 -
第三十七篇:JAVA访问数据库之连接数据库
开发一个访问数据库的应用程序,首先要加载数据库的驱动程序,只需要在第一次访问数据库时加载一次,然后每次运行时创建一个Connection实例,紧接着执行操作数据库的SQL语句,并处理返回的结果集,最后在完成完成此次操作时销毁前面创建的Connection,释放与数据库的连接。加载数据库驱动在连接数据库之前,首先要把JDBC驱动类加载到Java虚拟机,可以使用java.lang.Cl原创 2017-08-23 09:37:42 · 315 阅读 · 0 评论 -
第二十二篇:JAVA输入输出(IO)之常用流
ByteArrayInputStream、ByteArrayOutputStreamByteArrayInputStream 包含一个内部缓冲区,该缓冲区包含从流中读取的字节。内部计数器跟踪 read 方法要提供的下一个字节。 ByteArrayOutputStream类实现了一个输出流,其中的数据被写入一个 byte 数组。缓冲区会随着数据的不断写入而自动增长。可使用 toByteA原创 2017-08-14 12:27:18 · 263 阅读 · 0 评论 -
第二十一篇:JAVA输入输出(IO)之字符流
字符输入流java.io.Reader用于读取字符流的抽象类。子类必须实现的方法只有 read(char[], int, int) 和 close()。但是,多数子类将重写此处定义的一些方法,以提供更高的效率和/或其他功能。方法摘要返回值方法名说明abstract voidclose()关闭该流并释放与之关原创 2017-08-14 12:26:37 · 271 阅读 · 0 评论 -
第二十篇:JAVA输入输出(IO)之字节流
字节输入流java.io.InputStream类是表示字节输入流的所有类的超类,字节输入流都直接或间接的继承了该类,通常情况下我们会使用该类的子孙类操作字节输入流,实现对字节输入流的读取。 在该类中,我们最常用的方法有如下几个:返回值方法名说明voidclose()关闭此输入流并释放与该流关联的所有系统资源原创 2017-08-14 12:25:25 · 321 阅读 · 0 评论 -
第二篇:JAVA之基础语言概述
本篇要点:Java语言的发展史编译型语言和解释型语言Java语言的编译、解释运行机制Java通过JVM虚拟机实现跨平台安装JDK,设置Path环境变量Java程序的组织形式Java程序的命名规则Java的垃圾回收机制一、Java语言的发展史1991年Sun公司的James Gosling(詹姆斯·高斯林)等人开始开发名称为 Oak 的语言,希望用于控制嵌入原创 2017-08-03 11:19:10 · 417 阅读 · 0 评论 -
第三篇:JAVA之基本语句
本篇要点:注释标识符和关键字数据类型基本类型的类型转换及原理运算符流程控制结构数组一、注释Java注释的三种形式:单行注释(//...)、多行注释(/*...*/)、文档注释(/**...*/);编写的Java源代码添加合适的文档注释,通过JDK提供的javadoc工具可以直接将源代码里的文档注释提取成一份系统的API文档;二、标识符和关键字标识符用原创 2017-08-03 13:47:24 · 353 阅读 · 0 评论 -
第四篇:JAVA之面向对象(上)
本篇要点:类和对象一、类和对象类是某一批对象的抽象,可以把类理解成某种概念;对象是一个具体存在的实体;类的定义格式:Java类名必须是由一个或多个有意义的单词连缀而成的,每个单词首字母大写,其他字母全部小写,单词与单词之间不要使用任何分隔符;类定义可以包含三种最常见的成员:构造器、成员变量和方法,三种成员都可以定义零个或多个;成员变量语法格式:[修饰符] 类型 成员变量原创 2017-08-03 16:19:34 · 279 阅读 · 0 评论 -
第五篇:JAVA之面向对象(中)
本篇要点:封装深入构造器类的继承多态初始化块一、封装封装指的是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问;Java的访问控制级别由小到大:private ---> default ---> protected ---> publicJavaBean封装类:每个实例变量都被private修饰原创 2017-08-13 20:20:29 · 259 阅读 · 0 评论 -
第六篇:JAVA之面向对象(下)
本篇要点:单例设计模式初始化代码块final关键字抽象方法模板方法设计模式接口一、单例设计模式所谓单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例。饿汉式:class Singleton{ //1.私有化构造器,使得在类的外部不能够调用此构造器 private Singleton(){}原创 2017-08-13 21:01:07 · 263 阅读 · 0 评论 -
第七篇:JAVA常用类之String
1. 多个字符连接成一串构成了字符串,字符串属于引用类型,位于java.lang包中,默认情况下不需要导入该包。2. “abc”与new String("abc")的区别:“abc”存储于常量池中,new String(“abc”)存储于堆内存中;3. 如果想判断两个字符串是否一致,不应该使用“==”,应该使用String类中的equals()方法;构造方法原创 2017-08-13 22:33:40 · 313 阅读 · 0 评论 -
第八篇:JAVA常用类之StringBuffer
1. String字符串不可变,要可变就会用到StringBuffer或StringBuilder;2. StringBuffer支持并发操作,线程安全的,适合多线程中使用;3. StringBuilder不支持并发操作,线程不安全的,不适合多线程中使用; 4. 不必考虑到线程同步问题,我们应该优先使用StringBuilder;5. 如果要保证线程安全,自然是StringBu原创 2017-08-13 22:46:11 · 446 阅读 · 0 评论 -
第九篇:JAVA常用类之Math
1. Math类包含用于执行基本数学运算的方法;方法摘要返回值方法名说明static doubleabs(double a)返回 double 值的绝对值static floatabs(float a)返回 float 值的绝对值static int原创 2017-08-13 23:02:27 · 365 阅读 · 0 评论 -
第十篇:JAVA常用类之日期处理
在应用程序设计中,我们经常会用到日期时间,比如出生日期之类的,JAVA中为我们提供了一些处理日期的类。java.util.DateDate类是我们用的比较多的一个处理时间的类。表示特定的瞬间,精确到毫秒。 在 JDK 1.1 之前,类 Date 有两个其他的函数。它允许把日期解释为年、月、日、小时、分钟和秒值。它也允许格式化和解析日期字符串。不过,这些函数的 API 不易于实现原创 2017-08-13 23:05:44 · 514 阅读 · 0 评论 -
第十一篇:JAVA常用类之格式化
日期格式化在之前的博客中我们使用到了操作日期的一些类,我们发现,如果我们想要获得指定格式的日期字符串可以做到但是很麻烦,下面为大家介绍几种日期的格式化方式。java.text.DateFormatDateFormat是日期/时间格式化子类的抽象类,它以与语言无关的方式格式化并解析日期或时间。日期/时间格式化子类(如 SimpleDateFormat)允许进行格式化(也就是日原创 2017-08-13 23:10:26 · 653 阅读 · 0 评论 -
第十二篇:JAVA常用类之包装类
JAVA语言包装类把基本数据类型转换为对象。每个JAVA基本类型在java.lang包中都有一个相应的包装类。基本类型包装类booleanBooleanbyteBytecharCharactershortShortintInteger原创 2017-08-13 23:12:10 · 493 阅读 · 0 评论 -
第十三篇:JAVA之异常处理
异常的概念异常就是在程序运行过程中由于硬件设备的问题、软件设计错误、缺陷等导致的程序错误。在软件开发的过程中,很多情况都将导致异常的产生,例如文件不存在、网络异常等。 在java中,异常用对象表示。在一个方法的运行过程中,如果发生了异常,则这个方法(或者java虚拟机)生成一个代表该异常的对象,该异常对象中包括了异常事件类型以及发生异常时应用程序目前的状态和调用过程。异常的分类原创 2017-08-13 23:14:09 · 323 阅读 · 0 评论 -
第十四篇:JAVA之集合框架
在JAVA中专门设计了一组类,他们实现了各种各样的数据存储,这种专门用来存储其他对象的类,被称为容器类,这组类和接口的设计结构也被称为集合框架(Collection Framework)。 JAVA集合主要分为三种类型。Set(集):集合中的对象不按照特定顺序排序,不允许有重复对象。某些实现类可以对集合中对象按特定方式排序。List(列表):集合中的对象按照索引位置排序,允许有重复对象原创 2017-08-14 09:11:31 · 271 阅读 · 0 评论 -
第十六篇:JAVA集合框架之List接口实现类
java.util.ArrayListArrayList有点类似于数组,相比较于数组而言,ArrayList可以动态的更改元素个数,相对于数组较为灵活。 每个 ArrayList 实例都有一个容量。该容量是指用来存储列表元素的数组的大小。它总是至少等于列表的大小。随着向 ArrayList 中不断添加元素,其容量也自动增长。并未指定增长策略的细节,因为这不只是添加元素会带来分摊固定时间原创 2017-08-14 09:18:45 · 430 阅读 · 0 评论 -
第十七篇:JAVA集合框架之Map接口实现类
java.util.HashMap基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了非同步和允许使用 null 之外,HashMap 类与 Hashtable 大致相同。)此类不保证映射的顺序,特别是它不保证该顺序恒久不变。 此实现假定哈希函数将元素适当地分布在各桶之间,可为基本操作(get 和 put)提供稳定的性能。迭代原创 2017-08-14 09:22:10 · 374 阅读 · 0 评论 -
第十八篇:JAVA之泛型
泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。 Java语言引入泛型的好处是安全简单。 在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者原创 2017-08-14 09:23:44 · 298 阅读 · 0 评论 -
第十九篇:JAVA输入输出(IO)之文件
计算机文件是以计算机硬盘为载体存储在计算机上的信息集合。JAVA中对文件的操作主要是使用java.io.File类。这一篇博客也将围绕着File类进行讲解。构造方法方法名说明File(File parent, String child)根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例原创 2017-08-14 12:22:24 · 299 阅读 · 0 评论 -
第三十六篇:JAVA访问数据库之概述
Java类库中包含一组用于访问数据库的接口和类,作为开发数据库应用程序的API。这些接口和类统称为JDBC(Java DataBase Connectivity),JDBC是访问数据库的类和接口的结合。对于数据库的操作,在整个Java学习过程中至关重要。JDBC简介JDBC提供了连接各种常用数据库的能力。有了JDBC,访问数据库就是一件很容易的事,有了JDBC,就不必为访问Sy原创 2017-08-23 09:36:09 · 348 阅读 · 0 评论