随笔分类 - Java基础笔记
观看毕向东老师的Java基础视频后做的笔记内容
摘要:概述 符合一定规则的表达式 专门用于操作字符串 特点: 用于一些特定的符号来表示一些代码操作,这样就可以简化书写 所以学习正则表达式,就是在学习一些特殊符号的使用 好处: 可以简化对字符串的复杂操作 弊端: 符号定义越多,正则越长,阅读性越差 规则 下面只是一些简单的规则,具体详细规则查询API文档 Greedy 数量词 X? X,一次或一次也没有...
阅读全文
摘要:概述 网络模型 网络通讯的要素 ip地址:网络中设备的标识符 端口:用于标识同一台设备上不同的进程,有效端口:0~65535,其中0~1024是系统使用端口或者保留端口 TCP与UDP UDP特点: 面向无连接,速度快,不可靠 数据包中封装了数据、源和目的 每个数据报最大为64K TCP特点: 面向连接,通过三次握手建立连接,安全可靠 经常用于大数据的传输 Socke...
阅读全文
摘要:PrintWriter打印流 Writer的子类,既可以接收字符流,也可以接收字节流,还可以接收文件名或者文件对象,非常方便 同时,还可以设置自动刷新以及保持原有格式写入各种文本类型的print方法 PrintWriter的小例子:打印字符录入的大写 1: //读取键盘录入,打印大写 2: private static void printWriterMethod() throws I...
阅读全文
摘要:File类 用来将文件或目录封装成对象 方便对文件或目录信息进行处理 File对象可以作为参数传递给流进行操作 File类常用方法 创建 booleancreateNewFile():创建新文件,如果文件存在,返回false booleanmkdir():创建目录,只能创建一级目录 booleanmkdirs():创建目录,可创建多级目录 删除 booleandelete():删除文件,如果文件不...
阅读全文
摘要:概述 IO流用来处理设备之间的数据传输 Java对数据的操作时通过流的方式 Java用于操作流的对象都在IO包中 流按操作的数据分为:字节流和字符流 流按流向不同分为:输入流和输出流 IO流常用基类 字节流的抽象基类 InputStream,OuputStream 字符流的抽象基类 Reader,Writer 注: 这些基类的子类都是以基类的名称结尾的,如FileReader,FileInputS...
阅读全文
摘要:System类 工具类全部都是静态方法 常用方法 获取系统属性信息 static PropertiesgetProperties()static StringgetProperty(String key) 设置自定义属性信息static StringsetProperty(String key, String value) 命令行设置自定义属性信息 1: import java.util...
阅读全文
摘要:Collections 集合框架的工具类,方法全部为静态 Collections与Collection的区别 Collection是集合框架的一个顶层接口,里面定义了单列集合的共性方法 Collections是集合框架的一个工具类,该类中的方法都是静态的,提供的方法中可以对List集合进行排序,二分查找等,通常常用的集合都是线程不安全的,因为要提高效率,如果多线程操作这些集合时,可以通过该工具类的...
阅读全文
摘要:Map接口 Map 该集合存储的是键值对,成对往集合里存,而且要保证键的唯一性 常用方法 添加 Vput(K key, V value) voidputAll(Map m) 删除 voidclear() Vremove(Object key) 判断 booleanisEmpty() booleancontainsKey(Object key) booleancontainsValue(Object...
阅读全文
摘要:概述 为什么会出现集合类 面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储,集合就是存储对象最常用的一种方式 数组和集合类同是容器,有何不同 数组虽然也可以存储对象,但是长度固定,集合长度可变 数组中可以存储基本数据类型,集合只能存储对象 集合类的特点 集合类只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象 集合框架 Collection接口中定...
阅读全文
摘要:String类 String类是一个特殊的类,叫做只读类,一旦创建了对象,便不可被改变,同样"abc"既为一个常量,也为一个对象,也是不可以改变的 String s1 = “abc”; 此语句只包含一个对象,即为“abc” String s2 = new String(“abc”); 此语句包含两个对象,"abc"为一个对象,new的String为一个对象 所以s1与s2的地址值是不同的 Stri...
阅读全文
摘要:概述 当需要多线程配合完成一项任务时,往往需要用到线程间通信,以确保任务的稳步快速运行 相关语句 wait():挂起线程,释放锁,相当于自动放弃了执行权限 notify():唤醒wait等待队列里的第一个线程 notifyAll():唤醒所有等待队列中的线程 他们都使用在同步中,因为要对持有监视器(锁)的线程操作,所以要使用在同步中,因为只有同步才具有锁 相关问题 为什么这些操作线程的方法要定义...
阅读全文
摘要:概述 进程: 是一个正在执行中的程序 每一个进程执行都有一个执行顺序,该执行顺序是一个执行路径,或者叫一个控制单元 线程: 就是进程中的一个独立的控制单元,线程在控制着进程的执行 一个进程中至少有一个线程 Java JVM启动的时候会有一个进程java.exe,该进程中至少有一个线程负责Java程序的执行,而且这个线程运行的代码存在于main方法中,该线程称之为主线程,与C类似,java.exe相...
阅读全文
摘要:概述 对类文件进行分类管理。 给类提供多层命名空间。 写在程序文件的第一行。 类名的全称的是 包名.类名。 包也是一种封装形式。 访问权限 引用《The Complete Reference》中的经典例子来说明Java包中类成员的访问权限问题 下面的例子显示了访问修饰符的所有组合 该例有两个包和五个类 记住这两个不同包中的类需要被存储在以它们的包p1、p2命名的目录下。 第一个包定义了三个类: ...
阅读全文
摘要:异常概述 异常是什么 是对问题的描述,将问题进行对象的封装 异常体系 Throwable |---Error |---Exception |---RuntimeException 异常体系的特点 异常体系中的所有类以及建立的对象都具有可抛性 也就是说可以被throw和throws关键字操作 只有异常体系具备这个特点 throw和throws的用法 throw定义在函数内,用于抛出异常对...
阅读全文
摘要:内部类概述 内部类是将一个类定义在另一个类里面,对里面那个类就成为内部类(内部类,嵌套类)。 当描述事物时,事物的内部还有事物,该事物用内部类来描述,因为内部事物在使用外部事物的内容 访问特点 内部类可以直接访问外部类的所有成员,包括私有,之所以可以直接访问,是因为内部类持有外部类对象的引用,Outer.this 而外部类想要访问内部类必须创建对象或者使用类名引用 其他类访问内部类格式 Outer...
阅读全文
摘要:概述 定义:某一类事物的多种存在形态。 例:动物中猫,狗。 猫这个对象对应的类型是猫类型 猫 x = new 猫(); 同时猫也是动物中的一种,也可以把猫称为动物。 动物 y = new 猫(); 动物是猫和狗具体事物中抽取出来的父类型。 父类型引用指向了子类对象。 程序中体现: 父类或者接口的引用指向或者接收自己的子类对象。 好处和作用: 多态的存在提高了程序的扩展性和后期可维护性 前提: 需...
阅读全文
摘要:抽象类概念 抽象定义: 抽象就是从多个事物中将共性的,本质的内容抽取出来。 例如:狼和狗共性都是犬科,犬科就是抽象出来的概念。 抽象类: Java中可以定义没有方法体的方法,该方法的具体实现由子类完成,该方法称为抽象方法,包含抽象方法的类就是抽象类。 抽象方法的由来: 多个对象都具备相同的功能,但是功能具体内容有所不同,那么在抽取过程中,只抽取了功能定义,并未抽取功能主体,那么只有功能声明,没有功...
阅读全文
摘要:继承概述 继承概述 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继那个类即可。 多个类可以称为子类,单独这个类称为父类或者超类。 子类可以直接访问父类中的非私有的属性和行为。 通过 extends 关键字让类与类之间产生继承关系。 class SubDemo extends Demo{} 继承好处 提高了代码的复用性。 让类与类之间产生了...
阅读全文
摘要:什么时候会加载类 使用到类中的内容时加载,三种情况: 创建对象:new StaticDemo(); 使用类中的静态成员:StaticCode.num = 9; StaticCode.getNum(); 在命令行中运行:java StaticDemo 类所有内容加载顺序及内存中的存储位置 语句分析 Person p = new Person(“Shawn”,20); 在栈内存中,开辟main...
阅读全文
摘要:设计模式 解决某一类问题最行之有效的方法 Java中有23中设计模式 单例设计模式 解决一个类在内存中只存在一个对象 思路 将构造函数私有化 在类中创建一个本类对象 提供一个方法可以获取到对象 两种方法 饿汉式:类建立时分配对象 1: class Single 2: { 3: private Single(){} 4: //类建立时即初始化了对象 ...
阅读全文