![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java语言高级
hello嗨
这个作者很懒,什么都没留下…
展开
-
抽象
抽象方法——就是加上abstract关键字,然后去掉大括号,直接分号结束。抽象类———抽象方法所在的类,必须是抽象类才行。在class之前写上abstract即可。如何使用抽象类和抽象方法不能直接创建new抽象对象。必须用一个子类来继承抽象类。这个子类必须覆盖重写抽象父类当中所有的抽象方法。覆盖重写(实现)——子类去掉抽象方法的abstract关键字,然后补上方法体大括号。创建子...原创 2019-05-24 12:52:12 · 158 阅读 · 0 评论 -
缓冲流
缓冲流的原理java.io.BufferedOutputStream extends OutputStreamBufferedOutputStream ————字节缓冲输出流继承自父类的共性方法public void close()——关闭此输出流并释放与此流相关联的任何系统资源。public void flush()——刷新此输出流并强制任何缓冲的输出字节被写出。public v...原创 2019-06-14 10:06:37 · 3810 阅读 · 0 评论 -
递归
方法自己调用自己递归分类递归分为两种,直接递归和间接递归。直接递归称为方法自身调用自己。间接递归可以A方法调用B方法,B方法调用C方法,C方法调用A方法。【注意事项】递归一定要有条件限定,保证递归能够停止下来,否则会发生栈内存溢出。在递归中虽然有限定条件,但是递归次数不能太多。否则也会发生栈内存溢出。构造方法,禁止递归。(编译报错——构造方法是创建对象使用的,一直递归会导致内...原创 2019-06-09 13:25:52 · 130 阅读 · 0 评论 -
转换流
转换流的原理OutputStreamWriterjava.io.OutputStreamWriter(字符输出流)extends WriterOutputStreamWriter———是字符流通向字节流的桥梁:可以使用指定charset将要写入流中的字符编码成字节(编码:把能看懂的变成看不懂)。继承自父类的共性成员方法public void write(int c)—————写入单个...原创 2019-06-14 16:41:53 · 255 阅读 · 0 评论 -
序列化流
序列化和反序列化java.io.ObjectOutputStream extends OutputStreamObjectOutputStream————————————————对象的序列化流作用——————————————————————————————把对象以流的方式写入到文本中保存构造方法ObjectOutputStream(OutputStream out)创建写入指定Out...原创 2019-06-14 19:25:01 · 203 阅读 · 0 评论 -
打印流
java.io.PrintStream————打印流Printstream为其他输出流添加了功能,使他们能够方便的打印各种数据值表示形式。Printstream特点1.只负责数据的输出,不负责数据的读取2.与其他输出流不同,Printstream永远不会抛出IOException3.有特有的方法,print,printlnvoid print(任意类型的值)void println...原创 2019-06-14 22:29:51 · 150 阅读 · 0 评论 -
异常
java.lang.Throwable类是Java语言中所有错误或者异常的超类。Exception—编译期异常,进行编译(写代码)Java程序出现的问题。RuntimeException—运行期异常,Java程序运行过程中出现的问题。异常就相当于程序得看一个小毛病(感冒,发烧),把异常处理掉,程序可以继续执行(吃点药,继续工作)。Error———————错误错误相当于程序得了一个...原创 2019-06-03 20:38:13 · 200 阅读 · 0 评论 -
网络编程
端口号TCP通信TCP通信的客户端TCP通信的客户端——————向服务器发送连接请求,给服务器发送数据,读取服务器回写的数据。表示客户端的类java.net.Socket——————此类实现客户端套接字(也可以讲座“套接字”)。套接字是两台机器间通信的端点。套接字——————————包含了IP地址和端口号的网络单位。构造方法Socket(String host,int pos...原创 2019-06-15 13:36:16 · 139 阅读 · 0 评论 -
Stream流
两种获取Stream流的方式java.util.stream.Stream是Java 8新加入的最常用的流接口。(这并不是一个函数式接口。)获取一个流非常简单,有以下常用的方式所有的Clollection集合都可以通过Stream默认方法获取流。default Stream stream()Stream接口的静态方法of可以获取数组对应的流。staticStreamof(T…valu...原创 2019-06-20 10:31:13 · 272 阅读 · 0 评论 -
IO字节流
未完待续~……原创 2019-06-10 14:49:54 · 216 阅读 · 0 评论 -
线程
程序一段静态的代码。进程正在执行的一个程序。线程一个程序内部的一条执行路径。原创 2019-05-19 15:00:50 · 162 阅读 · 0 评论 -
IO字符流
字符输入流——Reader类java.io.Reader(字符输入流)——是字符输入流的最顶层的父类,定义了一些共性的成员方法,是一个抽象类。共性的成员方法int read()——读取单个字符并返回。int read(char[ ] cbuf)——一次读取多个字符,将字符读入数组。void close()——关闭该流并释放与之关联的所有资源。java.io.FileReader ex...原创 2019-06-11 16:26:15 · 105 阅读 · 0 评论 -
常用函数接口
函数式接口——————有且只有一个抽象方法的接口,称之为函数式接口。当然接口中可以包含其他的方法(默认,静态,私有)。@FunctionalInterface注解作用—————————可以检测接口是否是一个函数式接口是————编译成功否————编译失败(接口中没有抽象方法,抽象方法的个数多余一个)函数式接口的使用———一般可以作为方法的参数和返回值类型性能浪费的日志案例packag...原创 2019-06-17 15:50:53 · 283 阅读 · 0 评论 -
Properties集合
java.util.Properties集合extends Hashtable<k,v>implements Map<k,v>Properties类表示了一个持久的属性集。Properties可保存在流中或者从流中加载。Properties集合是唯一和IO流相结合的集合。可以使用Properties集合中的方法store,把集合中的零时数据,持久化写入到硬盘中存储...原创 2019-06-12 11:45:26 · 928 阅读 · 0 评论 -
数据库
数据库的英文单词————DataBase(简称DB)。什么是数据库?用于存储和管理数据的仓库。数据库的特点持久化存储数据的。其实数据库就是一个文件系统。方便存储和管理数据。使用了统一的方式操作数据库————SQL。常见的数据库软件。。。。。。...原创 2019-06-25 17:05:28 · 250 阅读 · 0 评论 -
方法引用
方法引用——通过对象名引用成员方法使用前提是对象是已经存在的,成员方法也是已经存在的,就可以使用对象名来引用成员方法。方法引用——通过类名引用静态成员方法类已经存在,静态成员方法也已经存在,就可以通过类名直接引用静态成员方法。方法引用——通过super引用父类的成员方法方法引用——通过this引用本类的成员未完待续~...原创 2019-06-22 17:02:07 · 311 阅读 · 0 评论 -
反射
反射————框架设计的灵魂框架——半成品软件。可以在框架的基础上进行软件开发,简化代码。反射——将类的各个组成部分封装为其他对象,这就是反射机制。好处1.可以在程序运行过程中,操作这些对象。2.可以解耦,提高程序的可扩展性。...原创 2019-06-23 16:55:58 · 106 阅读 · 0 评论 -
注解
JDK1.5之后的新特性说明程序的使用注解——@注解名称作用分类1.编写文档————通过代码里标识的注解生成文档【生成doc文档】2.代码分析————通过代码里标识的注解进行分析【使用反射】3.编译检查————通过代码里标识的注解让编译器能够实现基本的编译检查【Override】JDK中预定义的一些注解@Override——检测被该注解标注的方法是否是继承自父类(接口)的。@De...原创 2019-06-24 16:49:39 · 209 阅读 · 0 评论 -
File类
java.io.File类文件和目录路径名的抽象表示形式。java把电脑中的文件和文件夹(目录)封装为了一个File类,我们可以使用File类对文件和文件夹进行操作。我们可以使用File类的方法创建一个文件/文件夹删除文件/文件夹获取文件/文件夹判断文件/文件夹是否存在对文件夹进行遍历获取文件的大小File类是一个与系统无关的类,任何的操作系统都可以使用这个类中的方法。重...原创 2019-06-08 16:41:58 · 2041 阅读 · 0 评论 -
Lambda表达式
Lambda表达式的标准格式由三个部分组成一些参数一个箭头一段代码格式(参数列表)–>{一些重写方法的代码};解释说明格式()———————接口中的抽象方法的参数列表,没有参数,就空着,有参数姐写出参数,多个参数使用逗号分隔。–>———————传递的意思,把参数传递给方法体{}。{}————————重写接口的抽象方法的方法体。Lambda表达式的无参数无返回值...原创 2019-06-08 11:43:07 · 261 阅读 · 0 评论 -
接口
接口就是多个类的公共规范。接口是一种引用数据类型,最重要的内容就是其中的:抽象方法。如何定义一个接口的格式public interface 接口名称{//接口内容}备注:换成了关键字interface之后,编译生成的字节码文件仍然是:.java–>.class。如果是Java 7,那么接口中可以包含的内容有1.常量。2.抽象方法。如果是Java 8,还可以额外包含有3...原创 2019-05-24 22:17:12 · 230 阅读 · 0 评论 -
final关键字
final关键字代表最终的、不可改变的。常见的四种用法可以用来修饰一个类可以用来修饰一个方法还可以用来修饰一个局部变量还可以用来修饰一个成员变量当final关键字用来修饰一个类的时候格式public final class 类名称{ //… }含义——当前这个类不能有任何的子类。注意一个类如果是final的,那么其中所有的成员方法都无法进行覆盖重写。当fina...原创 2019-05-26 14:05:55 · 114 阅读 · 0 评论 -
四种权限修饰符
Java中有四种权限修饰符---------------------------public > protectes > (default) > private同一个类---------------YES------YES---------YES---------YES同一个包---------------YES------YES---------YES---------N...原创 2019-05-26 14:16:47 · 140 阅读 · 0 评论 -
内部类
如果是一个事物的内部类包含另一个事物,那么这就是一个类内部包含另一个类。例如——身体和心脏的关系。又如——汽车和发动机的关系。分类成员内部类局部内部类(包含匿名内部类)成员内部类的定义格式`修饰符 class 外部类名称{ 修饰符 class 内部类名称{ //… } //… }注意内用外,随意访问;外用内,需要内部对象。如何使用成员...原创 2019-05-26 15:56:54 · 274 阅读 · 0 评论 -
常用API
应用程序编程接口,Java API是一本程序员使用的字典。Scanner的功能可以实现键盘输入,到程序当中。引用类型的一般使用步骤1. 导包import 包路径.类名称;如果需要使用的目标类,和当前类位于同一个包下,则可以省略导包语句不写。只有java.lang包下的内容不需要导包,其他的包都需要import语句。2. 创建类名称 对象名 = new 类名称();3. 使用对...原创 2019-05-22 15:26:13 · 297 阅读 · 0 评论 -
匿名对象
创建对象的标准格式类名称 对象名 = new 类名称();匿名对象就是只有右边的对象,没有左边的名字和赋值运算符。new 类名称();注意事项匿名对象只能使用唯一的一次,下次再用不得不再创建一个新对象。使用建议如果确定有一个对象只需要使用唯一的一次,就可以用匿名对象。...原创 2019-05-22 15:35:02 · 98 阅读 · 0 评论 -
静态static关键字
如果一个成员变量使用了static关键字,那么这个变量不再属于自己,而是属于所在的类。多个对象共享同意风数据。一旦使用static修饰成员方法,那么这就成为了静态方法。静态方法不属于对象,而是属于类的。如果没有static关键字,那么必须首先创建对象,然后对象才能使用它。注意事项1.静态不能直接访问非静态。原因——因为在内存当中是【先】有的静态内容,【后】有的非静态内容。2.静态方...原创 2019-05-23 16:32:15 · 163 阅读 · 0 评论 -
Cllection集合
java.util.Collection接口所有单列集合的最顶层接口,里边定义了所有的单列集合的共性的方法。任意单列集合都可以使用Collection接口中的方法。共性的方法public boolean add(E e)——把给定的对象添加到当前集合中。返回值是一个boolean 值,一般都返回true,所以可以不用接收。public void clear(E e)——清楚集合中的所...原创 2019-05-31 11:09:54 · 313 阅读 · 2 评论 -
泛型
创建集合对象,不使用泛型好处——————集合不使用泛型,默认的类型就是Object类型,可以存储任意类型的数据。弊端——————不安全,会抛出异常。创建集合对象,使用泛型好处1.避免了类型转换的麻烦,存储的是什么类型,取出的就是什么类型。2.把运行期异常(代码运行之后会抛出的异常),提升到编译器(写代码的时候会报错)。弊端泛型是什么类型,只能存储什么类型的数据。...原创 2019-05-31 13:35:56 · 152 阅读 · 0 评论 -
斗地主案例
import java.util.ArrayList;import java.util.Collections;/** * 斗地主综合案例 * 1.准备牌 * 2.洗牌 * 3.发牌 * 4.看牌 */public class DouDiZhu { public static void main(String[] args) { //1.准备牌 ...原创 2019-05-31 19:32:19 · 699 阅读 · 1 评论 -
数据结构
栈和队列数组链表红黑树原创 2019-06-01 11:58:29 · 119 阅读 · 0 评论 -
List集合
java.util.list接口 extends Collection接口List接口的特点有序的集合,存储元素和取出元素的顺序是一致的(存储123 取出123)。有索引,包含了一些带索引的方法。允许存储重复的元素。List接口中带索引的方法(特有)public void add(int index,E element)————将指定的元素,添加到该集合的指定位置上。publi...原创 2019-06-01 13:12:44 · 179 阅读 · 0 评论 -
Set集合
java.util.Set接口 extends Collection接口Set接口的特点不允许存储重复的元素。没有索引,没有带索引的方法,也不能使用普通的for循环遍历。java.util.HashSet集合 implement Set接口。HashSet接口的特点不允许存储重复的元素。没有索引,没有带索引的方法,也不能使用普通的for循环遍历。是一个无序的集合,存储元素和取...原创 2019-06-01 16:02:12 · 158 阅读 · 0 评论 -
Collection集合工具类的方法
java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:public static<T>boolean addAll(Collection<T> c,T…elements)——往集合中添加一些元素。public static void shuffle (List<?> list)——打乱顺序:打乱集合顺序。public...原创 2019-06-01 16:36:37 · 395 阅读 · 0 评论 -
Map集合
- java.util.Map<k,v>集合Map集合的特点Map集合是一个双列集合,一个元素包含两个值(一个key,一个value)。Map集合中的元素,key和value的数据类型可以相同,也可以不同。Map集合中的元素,key是不允许重复的,value是可以重复的。Map集合中的元素,key和value是一一对应。- java.util.HashMap<k,...原创 2019-06-02 13:03:34 · 204 阅读 · 0 评论 -
线程池
线程池———————JDK1.5之后提供的java.util.concurrent.Executors————线程池的工厂类,用来生成线程池Executors类 中的静态方法static ExecutorService newFiexdThreadPool(int nThreads)创建一个可重用固定线程数的线程池参数int nThreads————————————创建线程池中...原创 2019-06-08 10:49:09 · 939 阅读 · 0 评论 -
JDBC
Java Database Connectivity —————Java 数据库连接,Java语言操作数据库JDBC本质——其实就是官方(sun公司)定义的一套操作所有关系数据库的规则,即接口。各个数据库厂商去实现这套接口,提供数据库驱动jar包。我们可以使用这套接口(JDBC)编程,真正执行的代码是驱动jar包中的实现类。步骤1.导入驱动jar包①复制mysql-connector-...原创 2019-06-28 13:34:19 · 132 阅读 · 0 评论