![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
TeacherSugar
这个作者很懒,什么都没留下…
展开
-
Java基础32-字符流
1.所有的字符流类都继承自Reader和Writer这两个抽象类,其中Reader是用于读取字符流的抽象类,子类必须实现的方法只用read(char[],int,int)和close()。但是多数子类重写了此处定义的一些方法,以提供更高的效率或完成其他功能。Writer是用于写入字符流的抽象类,和Reader类对应。Reader和Writer要解决的最主要问题是国际化。原先的I/O类库只支持8...原创 2019-02-20 14:11:27 · 132 阅读 · 0 评论 -
Java基础23-Set接口
1.Set接口是Collection接口的子接口,除了拥有Collection接口的方法以外,Set接口没有提供额外的方法。2.Set接口方法下面列出Set接口继承自Collection接口的主要方法:boolean add(Object obj)向集合中添加一个数据元素,该数据元素不能和集合中现有数据元素重复元素。如果添加的是重复元素,则添加的操作无效,并返回false。Set...原创 2019-01-31 10:56:56 · 171 阅读 · 0 评论 -
Java基础33-其他流
到目前为止,使用的字节流、字符流都是无缓冲输入、输出流,这就意味着,每次的读、写操作都会交个操作系统来处理。这样的做法可能会对系统的性能造成很大的影响,因为每次操作都可能引发磁盘硬件的读、写或网络的访问,这些磁盘硬件读、写和网络访问会占用大量系统资源,影响效率。1.缓冲流前面介绍的字节流和字符流,因为没有使用缓冲区等其他原因,一般不直接使用。在实际编程的过程中,这些对象的引用还要传入装饰类...原创 2019-02-23 15:08:21 · 86 阅读 · 0 评论 -
Java基础29-File类
1.Java是面向对象的语言,所以想要把数据存储到文件中,就必须有一个对象表示这个文件。File类的作用就是代表一个特定的文件或目录,并提供了若干方法对这些文件或目录进行各种操作。File类在java.io包下,与系统输入输出相关的类通常都在这个包下。2.File类的构造方法构造一个File类的实例,并不是创建一个文件或目录,而是创建该路径(文件或目录)的抽象,它可能真实存在,也可能不...原创 2019-02-09 21:35:46 · 132 阅读 · 0 评论 -
Java基础22-了解集合框架
1.集合框架集合,也称为容器,它可以将一系列元素组成一个单元,用于存储、提取、管理数据。JDK提供的集合API都包含在java.util包内。Java集合框架主要分两大部分:实现了Collection接口,该接口定义了存取一组对象的方法,其子接口List和Set分别定义了存取方式; 实现了Map接口,该接口定义了存储一组“键(key)值(value)”映射对的方法。2.集合引入...原创 2019-01-30 11:21:47 · 87 阅读 · 0 评论 -
Java基础28-自动拆箱和装箱
1.上面的章节已经介绍JDK1.5增加了一个新特性——增强for循环。接下来,将继续介绍JDK1.5的另外两个新特性,自动拆箱和装箱、泛型。2.自动拆箱和装箱概念自动拆箱和装箱,其目的是方便基本数据类型和对应的包装类型进行转换。在此可以直接把一个基本数据类型的值赋给其他包装类型(装箱),反之亦然(拆箱),中间的过程有编译器自动完成。编译器对这个过程也只是做了简单的处理,通过包装类的va...原创 2019-02-05 16:45:23 · 91 阅读 · 0 评论 -
Java基础21-线性结构
1.前面在介绍线性结构的时候已经提到过,常用的线性结构有线性表、栈和队列等。2.线性表的 存储结构线性表的结构特点主要表现在两个方面:均匀性,虽然不同数据表的数据元素可以是各式各样的,但对同一线性表的各数据元素必定具有相同的数据类型和长度; 有序性,各数据元素在线性表中有序排列,数据元素之间相对位置是线性的,即存在唯一的“第一个”元素和“最后一个”元素。除第一个和最后一个元素,其他元...原创 2019-01-29 12:21:58 · 335 阅读 · 0 评论 -
Java基础27-Map接口
1.Map定义了存储“键-值”映射对的方法。2.HashMap的使用HashMap是Map接口的一个常用实现类,下面通过一个案例简要介绍HashMap的使用。package cn.lanqiao01;import java.util.HashMap;import java.util.Map;public class Test{ public static void m...原创 2019-02-04 09:05:35 · 88 阅读 · 0 评论 -
Java基础17-异常的注意事项
1.多个catch块当我们对一段代码进行异常处理的时候会发现,有可能出现很多不同类型的异常,单靠一个异常处理不能解决问题所以我们需要提供多个catch语句块分别对异常进行处理:例如:import java.io.IOException;public class ExceptionTryCatchTest { public void doSomething() throws ...原创 2019-01-23 16:04:34 · 205 阅读 · 0 评论 -
Java基础30-I/O流
1.在正式学习字节流及字符流以前,有必要先了解一下I/O流。在Java中,文件的输入和输出是通过流(Stream)来实现的,流的概念源于UNIX中管道(pipe)的概念。在UNIX系统中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备、外部文件等。一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL。对于...原创 2019-02-11 17:38:59 · 86 阅读 · 0 评论 -
Java基础31-字节流
1.所有字节流类都继承自InputStream或OutputStream两个抽象类,这两个抽象类拥有的方法可以通过查阅JavaAPI(API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。)获得。JDK提供了不少字节流,下面列...原创 2019-02-16 22:23:14 · 108 阅读 · 0 评论 -
Java基础42-线程-线程的概述
多线程是这样一种机制,它允许程序(进程)中并发执行多个指令流,每个指令流就称为一个线程。多线程(让程序干更多的事,让程序同时执行多个程序,例如:(游戏(进程))一边放视频一边放背景音乐)。1.线程的引入线程是操作系统中的基本调度单位,进程不是调度的单元,所以每个进程在创建时,至少需要同时为该进程创建一个线程。线程可以成为轻量级进程,它和进程一样拥有独立的执行路径。区别在于,线程存在...原创 2019-04-01 17:53:17 · 75 阅读 · 0 评论 -
Java基础41-操作动态数组
Java在创建数组的时候,需要指定数组长度,且数组长度不可变。而在java.lang.reflect包下提供了一个Array类,这个类中包括了一系列static方法,通过这些方法可以创建动态数组,对数组元素进行赋值、取值操作。Array类提供的主要方法如下:Object newInstace(Class componentType,int length)创建一个具有指定元素类型和长度的新...原创 2019-04-01 17:23:33 · 150 阅读 · 0 评论 -
Java基础40-反射机制的动态调用
到目前为止,都是通过Class类的方法获取对应类的属性、方法和构造方法的详细信息。接下来通过之前的获取方法来动态创建对象、修改属和调用方法。1.创建对象、修改属性通过Class类的newInstance()方法创建对象。** * 动态创建对象,动态添加属性 * 必须先添加属性,再实例化,然后设置属性值 * @author meng * */public class Dyna...转载 2019-04-01 15:41:07 · 156 阅读 · 0 评论 -
Java基础39-通过反射机制获取类的方法、属性和构造方法
1.获取方法通过Class类的getMethods()方法、getDeclaredMethods()方法、getMethod(String name,Class[] args)方法和getDeclaredMethod(String name,Class[] args)等方法,程序员可以获得对应类的特定方法组合方法,返回值为Method对象数组或Method对象。接下来在上面案例基础上,说明...转载 2019-04-01 15:08:28 · 582 阅读 · 0 评论 -
Java基础37-XML解析
目前对XML解析技术有DOM和SAX。JDK提供了JAXP来使用DOM和SAX。1.DOM树DOM是XML文档的应用程序接口,它定义了对XML文档进行随机访问与操作的方法。DOM是一个与语言无关、与平台无关的标准接口规范。利用DOM,程序开发人员可以动态的创建XML文档,遍历文档结构,添加、修改、删除文档内容,改变文档的显示方式等。可以这样说,文档代表的是数据,而DOM则代表了如何去处理这...原创 2019-03-01 17:07:48 · 85 阅读 · 0 评论 -
Java基础36-XML概述
XML是可扩展标记语言的简称,XML一经推出,就得到了IT行业巨头们的响应,如今被广泛使用。XML独立于计算机平台、操作系统和编程语言用来表示数据,简单、灵活、交互性好和扩展这几个特点是其能被广泛使用的主要原因。1.XML应用范围XML的应用范围主要体现在以下几个方面。数据储存内存中的数据需要存储到文件中,才能在关闭系统或系统掉电之后,通过文件进行恢复。现如今,用数据库存储数据这种方...原创 2019-03-01 17:06:06 · 105 阅读 · 0 评论 -
Java基础38-反射机制
1.Java反射就是Java程序在运行时,可以加载、探知、使用编译期间完全未知的类。也就是说,Java程序可以加载一个运行时才得知类名的类,获得类的完整构造方法,并实例化出对象,给对象属性设定值或者调用对象的方法。这种在运行时动态获取的类的信息以及动态调用对象的方法的功能称为Java的反射机制。例如:package cn.lanqiao01;public class Test01...原创 2019-03-11 20:48:21 · 104 阅读 · 0 评论 -
Java基础35-十大经典排序算法
排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序。内部排序是数据记录在内存中进行排序。 外部排序是因排序的数据很大,一不能容纳全部的排序记录,在排序过程中需要访问外存。注意:本章使用的每段代码并非是独立的常见的内部排序算法:插入排序 希维尔排序 选择排序 冒泡排序 归并排序 快速排序 堆排序 基数排序等。时间复杂度与空间复杂...原创 2019-02-26 11:19:48 · 346 阅读 · 2 评论 -
Java基础34-String类
String类表示字符串,Java程序中的所有字符串都作为此类的对象。String类不是基本数据类型,它是一个类。因为对象初始化默认值是null,所以String类对象的初始化默认值也是null。String是一种特殊对象,具有其他对象没有的一些特性。String字符串是常量,字符串的值在创建后不可更改。 String类是最终类,不能被继承。1.String类的概念如何使用String...原创 2019-02-24 16:24:37 · 154 阅读 · 0 评论 -
Java基础26-工具类
1.Collections工具类,是集合对象的工具类,提供了操作集合的工具方法,如排序、复制和反转排序的等方法。ArrayList工具类,是数组的工具类,提供了操作数组的工具方法,如排序、二分查找(后面章节讲排序)等。2.Collections工具类常用方法void sort(List list)根据数据元素的自然顺序对指定集合按升序进行排序。void sort(List lis...原创 2019-02-03 17:37:25 · 159 阅读 · 0 评论 -
Java基础25-List接口
1.List接口是Collection接口的子接口,在实现了List接口的集合中,元素是有序的,而且可以重复。List接口和Set接口一样可以容纳所有类型的对象。List集合中的数据元素都对应一个整数形式的序号索引,记录其在集合中的位置。可以根据此序列号来存储元素。JDK中实现了List接口的常用实现类有ArrayList和LinkedList。2.List接口方法List接口继承...原创 2019-02-02 19:32:21 · 128 阅读 · 0 评论 -
Java基础09-Java类的创建和基本使用
1.补充上节所述的面向对象和面向过程的区别面向对象:就是创建类(一类事物的属性和方法),然后new 创建对象(类的实例);然后对象具有类的属性和方法(功能);面向过程:强调过程,即不管程序做什么都得有个过程,没有完整的类和对象概念,数据量大的时候结构复杂的时候,数据处理没有面向对象那样清晰(1)举个例子来区分面向对象和面向过程的区别:例如:同样是造一辆车(编写程序);(A)...原创 2019-01-13 21:33:34 · 192 阅读 · 0 评论 -
Java基础05-流程控制switch开关语句+for、while、do while()语句
1.开关语句switch在某些情况下,我们希望程序对条件进行一定的判断选择,但如果程序代码量大,那么使用if else 语句就会十分的冗长;Java 给我们提供了switch()开关语句;语法如下:switch(key){case value: 执行的代码;break;case value:执行的代码;break;default :执行的代码;break; ...原创 2019-01-08 00:07:08 · 410 阅读 · 0 评论 -
Java基础08-对象与类的初步认识
1.Java是一种面向对象的程序设计语言面向对象是一种对现实世界的理解和抽象的方法,是计算机编程技术发展到一定 阶段后产物,早起的计算机是面向过程的,解决的都是一些相对简单的问题,随着IT行业的不断发展,计算机被用于解决越来越复杂的问题,通过面向对象的这种方式,将现实世界的实物抽象成对象,将现实世界的关系抽象成关联、继承、实现、依赖等关系,从而帮助人们实现对现实世界的抽象与建模。通过面...原创 2019-01-12 15:41:49 · 119 阅读 · 0 评论 -
Java基础13-封装与抽象
1.在企业面试过程中,经常会被问到,面向对象有哪些基本特性?答案应该是:封装、继承和多态。如果要求四个答案的话,可以增加一个抽象。(1).封装就是将抽象得到的属性和行为结合起来,形成一个有机整体,也就是类。类里面有些属性和方法(尤其是属性)需要隐藏起来,不希望直接对外公开,但同时提供供外部访问的方法来访问这些需要隐藏的属性和方法。(2).封装的目的是增强安全性和简化编程,使用者不必了解...原创 2019-01-17 18:46:16 · 131 阅读 · 0 评论 -
Java基础07-数组
1.数组数组是把相同类型的若干变量按一定顺序组织起来,这些按序排列的同类型数据元素的集合称为数组。(1)一维数组;a.数组的声明:数据类型[] 数组名; 或 数据类型 数组名[];例如: int engNo[];double[] engSalary;char ch[]=new char[10];String[] engName;//String 字符串是引用类型,e...原创 2019-01-11 21:48:45 · 166 阅读 · 0 评论 -
Java基础04-流程控制 if、else语句的使用
1.if语句在某些情况下做某件事需要满足一定条件才能做一些操作,如果不满足条件就不能执行此操作,此时就是一种情况判断 Java提供if语句控制流程(1).if的语法if(表达式){ 代码块}注意:if如果不使用{}执行代码,if就只会对if语句下一句(if下面的第一句代码)进行流程控制例如:int age=20;if(age>18){ ...原创 2019-01-06 23:03:20 · 1714 阅读 · 0 评论 -
Java基础03- 运算符及表达式
1.Java支持如下运算符:(1)算数运算符:+、-、*、/、%、++、--。(加,减,乘,除,取余,加加,减减)(2)关系运算符:>,<,>=,<=,==,!=。(大于,小于,大于等于,小于等于,等于,不等于)(3)赋值运算符:=,+=,-=,*=,/=,%=等。(赋值,加等,减等,乘等,除等,取余等等等)(4)逻辑运算符:!,&,|,&&...原创 2019-01-05 22:28:21 · 271 阅读 · 0 评论 -
Java基础14-抽象类与final关键字
1.在面向对象分析和设计的过程中,经过抽象、封装和继承的分析之后,可能要创建一个抽象的父类,该父类定义了其所有子类共享的一般形式,具体细节由子类来完成。这样的父类作为规约,其需要子类完成的方法在父类中往往是空方法————方法本身没有实际意义。而且这些父类本身就比较抽象,根据这些抽象的父类实例化出的对象通常也缺乏实际意义,更多的是利用父类的规约创建出子类,再使用子类实例化出有意义的对象。Ja...原创 2019-01-18 21:01:40 · 213 阅读 · 0 评论 -
Java基础15-接口和包的使用
1.提到抽象类中可以有抽象方法,也可以有普通方法,但有抽象方法的类必须是抽象类。如果抽象类中的方法都是抽象方法,那么这些抽象方法组成的特殊抽象类就是接口。2.接口的概念:接口是一系列方法的声明,是一些抽象方法的集合。一个接口只有方法的声明没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现类可以有不同的行为。虽然我们常说,接口是一种特殊的抽象类,但是在面向对象编程...原创 2019-01-19 10:04:20 · 1174 阅读 · 0 评论 -
Java基础12-类的继承和多态
1.类的继承(关键字extends),即A类继承B类,B类称为父类、超类或基类,A类称为子类、衍生类或导出类。Java继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的属性或者方法,也可以用已存在的属性或者方法,这种技术能够非常容易地复用以前的代码,大大缩短开发周期,降低开发费用。继承语法格式如下:class 子类类名 extends 父类类名{类定义部分;...原创 2019-01-16 20:50:25 · 197 阅读 · 0 评论 -
Java基础20-数据存储结构
1.数据的存储结构是指数据的逻辑结构在计算机中的表示,即在计算机中如何进行物理存储,数据存储结构通常分为两类:顺序存储结构和链式存储结构,顺序存储结构:顺序存储结构是把逻辑上相邻节点存储在物理位置相邻的存储单元。节点间的逻辑关系由存储单元的邻接关系来体现,由此得到的存储表示称为顺序存储结构。顺序存储结构是一种最基本的存储表示方法,通常借助于程序设计语言中的数组来实现。 链式存储结构:...原创 2019-01-28 21:02:35 · 472 阅读 · 0 评论 -
Java基础24-迭代器、增强for循环
1.Iterator接口方法前面章节学习了Collection接口、Set接口和List接口,它们的实现类都没有提供边里集合的数据元素的方法,Iterator为集合而生,是java语言解决遍历集合的一个工具。它提供一种方法访问集合中各个元素,而不暴露该集合的内部实现细节。Collection接口的Iterator()方法返回一个Iterator对象,通过Iterator接口的两个方法即可实...原创 2019-02-01 20:14:37 · 481 阅读 · 0 评论 -
Java基础19-了解数据的逻辑结构和物理结构
1.用Java语言进行开发为什么还要学习数据结构这种基础知识呢?客观的说,如果只是从事系统上层的功能开发,学习数据结构的用处可能不大,因为Java已经提供了一些类,封装常用的数据结构。但如果从事一些底层开发,或者是一些关注系统性能的开发,学习数据结构的作用就非常明显。2.数据逻辑结构数据结构从大的方向上分,可以分为逻辑结构和存储结构。逻辑解耦还可以分为以下四类:集合:数据元素间...原创 2019-01-27 12:44:01 · 399 阅读 · 0 评论 -
Java基础16-异常的处理
1.异常的引入在程序运行过程中,经常会出现一些意外情况,这些意外会导致程序出错或者奔溃,从而影响程序正常运行如果不能很好的处理这些意外情况,程序的稳定性就会受到质疑。在Java语言中,将这些程序意外称为异常,出现异常时的处理称为异常处理,合理的异常处理可以是整个项目更加稳定,也可以使整个项目中正常点的逻辑代码和错误处理的代码实现分离,便于代码的阅读和维护。2.案例.异常处理是程序设计中...原创 2019-01-22 10:46:15 · 115 阅读 · 0 评论 -
Java基础11-访问权限和静态的总结
1.Java中访问权限分为四种,控制范围不同,即:public (公共的)、protected(受保护的)、default(默认的)(一般默认,使用的不多,写的也不多)、private(私有的)。使用权限能够更好的管理数据,或者这样理解可以这样理解数据,public是朋友圈的红包,各个朋友圈(不同包)都可以用;protected是家庭基金,只能家里面用(同包);...原创 2019-01-15 14:07:22 · 459 阅读 · 0 评论 -
Java基础18-抛出异常和自定义异常类
1.手工抛出异常在Java语言中,可以使用throw关键字手工抛出一个异常,语法形式如下:throw 异常对象;例如,手工抛出一个算数异常的代码如下:throw new ArithmeticException();public class Text{public static void main(String[] args){System.out.print("Now...原创 2019-01-25 14:15:30 · 936 阅读 · 0 评论 -
Java基础10-构造方法基本使用和代码块的初始化
1.构造方法解决问题构造方法很简单,修饰符(默认public)+类名(一定是类名并且一模一样)(){}构造方法也是方法,所以也可以参数和返回值,也可以被重载;简写类名(){}不写修饰符;系统会默认一个public;性质:构造方法在调用类时执行,即对类进行实例化的时候执行,或者new 类名的时候就执行;执行顺序先于属性和类的方法。补充:类中出现的关键字 this ...原创 2019-01-14 18:35:19 · 307 阅读 · 0 评论 -
Java基础06-方法的定义、声明、使用、重载
1.方法方法是Java中一个明名的代码块,如同在数学中用到的函数,其他语言常常直接称为函数。方法 通常是为了完成某一个特定功能,把程序中特定的代码组合到一起而构成的,其主要好处体现在两个方面:一个是重用,另一个是使程序结构更加清晰。方法的声明语法如下:[修饰符] 返回值类型 方法名(形参列表){方法体;}在Java 中,修饰符为访问者的权限大小,public 、pr...原创 2019-01-09 00:27:00 · 360 阅读 · 0 评论