Java学习笔记
文章平均质量分 61
介绍自己在学习Java过程中总结的笔记和心得
星辰安安
大数据工程师
展开
-
days24--正则表达式
正则表达式格式1:1.定义一个表达式 2:String对象.matcher(String reg)格式2:1.定义一个表达式2.使用 Pattern compile = Pattern.compile(reg);//表明reg是一个正则表达式3.Matcher matcher = compile.matcher(email);//匹配一个字符串4.System.out.println(matcher.matches());//调用匹配结果常用符号/…/ 代表一个模式的开始原创 2021-05-22 21:29:14 · 72 阅读 · 0 评论 -
days23--反射
类加载当程序要使用某个类时,如果该类还没有加载到内存中,系统会通过类的加载,类的连接,类的初始化三个步骤来对类进行初始化1.类的加载: 将class文件(源文件)读取内存,并创建对应的Class对象 任何类被使用时,系统都会创建一个java.lang.Class对象2.类的连接 验证阶段:检验被加载的类和相关类(父类/接口)内部结构是否合法 准备阶段:负责为类中的变量分配内存,并设置默认值 解析阶段:将类的二进制数据中字符(方法)引用改为直接引用3.类的初始化: 对类原创 2021-05-22 21:21:29 · 51 阅读 · 0 评论 -
days22--网络编程
网络编程:不同设备之间实现资源共享或数据传输网络编程三要素IP:设备在网络中唯一标识 注意:访问一个域名,先走hosts文件(本地域名服务器),再走DNS服务器端口:应用或程序在设备中唯一标识网络通信协议:资源共享或数据传输的规则,用于保证数据安全问题UDP:无连接通信协议发送数据时,不管有没有接收端存在.同样,接收端接收到数据时,也不会反馈接收到数据UDP发送步骤:1.创建端点Scoket对象 new DatagarmSocket(int port); port表示当原创 2021-05-22 20:59:31 · 49 阅读 · 0 评论 -
days21--多线程
进程和线程的区别进程:正在执行的程序 是系统进行资源分配和管理的独立单位每一个进程都有他自己的内存空间和系统资源线程:进程中某一个执行流程,可叫做流程控制单元 线程是进程中最小的执行单位 单线程:一个执行路近多线程:多个执行路近(同时去执行)注意:main方法也是一个线程创建线程的三种方式多线程详解方式1:通过Thread(实体类)类步骤:1.创建类继承Thread2.重写run3.创建对象4.调用start多线程的实现方式二:实现Runnable接口原创 2021-05-22 20:37:42 · 44 阅读 · 0 评论 -
days19--IO流之字节流
IO流:IO:输入/输出(input/output) 流:抽象的概念,数据传输的总称 IO流:用来处理设备之间数据传输问题input:读数据(硬盘->内存) output:写数据(内存->硬盘)IO流分类:按数据流的方向:输入流、输出流输入与输出是相对于应用程序而言的,比如文件读写,读取文件是输入流,写文件是输出流按处理数据单位:字节流、字符流字节流和字符流的用法几乎完成全一样,区别在于字节流和字符流所操作的数据单元不同,字节流操作的单元是数据单元是8位的原创 2021-05-17 09:03:16 · 100 阅读 · 0 评论 -
days20--IO流之字符流
字符输出流:字节流操作中文可能会出现乱码的情况(按照一个一个字节,中文存储的是多个字节) 按照字符一起进行操作Wrtier:是字符输出流所有类的抽象父类构造: OutputStreamWriter(OutputStream out)注意: 字符流构造中的参数不是具体的文件路径 而是字节流对象说明了字符流操作具体的文件内容时,本质上还是通过字节流操作方法:void write(int c) 写一个字符 void write(char[] cbuf) 写一个字符数组原创 2021-05-17 09:03:34 · 83 阅读 · 0 评论 -
days18--IO流之File
File:java用于操作文件或目录文件或目录的抽象 文件和目录可以通过File封装成对象对于File,其封装的并不是一个真正的文件,只是文件的路径,可存在可不存在,之后通过具体的操作把这个路径转化为具体的存在构造:File(String pathname) 通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。File(String parent, String child) 从父路径名字符串和子路径名字符串创建新的 File实例。File(File parent, Str原创 2021-05-17 09:02:53 · 110 阅读 · 0 评论 -
days17--集合之map
map原创 2021-05-17 09:02:28 · 56 阅读 · 0 评论 -
days16--集合之Set
Set:不重复 无序(没下标),存储和取出的顺序不能保证相同HashSet:底层结构是元素为链表的数组通过hashCode()返回值取模16得到存储位置,再通过equals()判断与同一位置链表的不同元素是否相同,相同覆盖,不同插入哈希值:一种运算方式,或一种结构,一种信息压缩的方式概述: 根据对象的地址值或者字符串或者数字计算得到的int类型的数值 Obeject中可以通过hasCode()方法来获取哈希值重写equals()时,也必须重写hashCode()方法,因为相等的对原创 2021-05-17 09:02:08 · 52 阅读 · 0 评论 -
days15--集合之List
集合体系:接口:Collection Map List Set实体类:ArrayList LinkedList HashMap HashSet TreeSetCollection:是单列集合的顶层接口,表示一组对象,这些对象也称为了Collection的元素JDK不提供此接口的直接实现类,提供了更具体的子接口(List和Set)实现使用:通过多态的方式 集合的实现类ArrayList和LinkedListCollection常用方法:bo原创 2021-05-17 09:01:43 · 72 阅读 · 0 评论 -
days14--泛型
泛型:表示所有类型提供了编译时类型安全检测机制,允许在编译时期检测到非法数据类型本质就是参数类型化,没有调用/使用之前可以表示所有的数据类型(形参),调用/使用时给上具体的数据类型(实参);格式: <标识>:标识可以随便给,常用E,T,K,V <标识1,标识2…标识n>:标识可以有多个,以逗号分割注意: 在具体调用时给定的类型可以看成实参,实参只能是引用数据类型(类)泛型方法:格式: public static 泛型 返回值类型(参数){}原创 2021-05-17 09:01:00 · 51 阅读 · 0 评论 -
days13--内部类与匿名内部类
匿名类原创 2021-05-17 09:00:41 · 69 阅读 · 0 评论 -
days12--异常
异常:程序出现的错误Throwable: error:程序无法处理的错误,系统错误(电脑关机了,内存不够,蓝屏,系统崩溃)Exception:程序能捕捉并处理的异常RunTimeException:运行异常非RunTimeException:编译异常(代码不符合java语法合适)异常处理:java中默认机制,程序出现错误,立即停止,影响其他代码的执行,但是某一块代码出现问题,不应该影响其他代码的执行,所以需要异常处理异常处理格式:try-catchtry{ 可能出现异常的原创 2021-05-17 09:00:16 · 61 阅读 · 0 评论 -
days11--抽象类和接口
为什么要使用抽象类直接实例化父类没有任何意义父类中方法体没有任何意义(子类重写父类方法,把父类方法体覆盖)避免子类忘记重写父类方法抽象:概述:Java中,一个类所创建的对象没有具体的实体,这个类定义为抽象类。Java中,一个没有方法体的方法应该定义为抽象方法,而类中如果有抽象方法,该类必须定义为抽象类。作用:避免父类直接实例化,和子类继承父类时没有重写父类中的方法 定义格式:抽象方法:访问修饰符 abstract 返回值 方法名(); 范例:public abstra原创 2021-05-16 16:39:17 · 69 阅读 · 0 评论 -
days09--面向对象之多态
多态:同一个类再不同时刻表现出不同形态前提:继承 方法重写 父类的引用指向子类的对象好处和弊端好处:提高了扩展性 弊端:子类独有的内容不能直接使用多态中的成员访问成员变量:只能使用父类中的内容成员方法:只能使用父类中的内容(子类重写父类中的方法,调用时就是子类的重写的结果)多态中的转型:向上转型子类到父类 父类的引用指向子类的对象 范例:Aniaml aniaml=new Cat();向下转型:多态中子类独有的内容不能直接使用,需要向下转型原创 2021-05-16 16:12:05 · 51 阅读 · 0 评论 -
days08--包
包 :本质就是类的文件夹作用: 分类方便管理 格式: package 包的全路径(src下开始);导包概述: 使用别的包下的类,需要给上全路径,多次使用路径需要写多次,繁琐,Java的导包的功能(导入的就是包下的类);格式: import 类的全路径(src下开始,多级包以逗号进行分割);同一包中,子类继承父类中非private的成员变量和成员方法,不同包中,子类继承父类中非private和default的成员变量和成员方法注意: Java中java.l原创 2021-05-16 15:59:37 · 53 阅读 · 0 评论 -
days06--面向对象之继承
继承:面向对象三大特征之一可以使的子类具有父类的属性和方法,还可以在子类中重新定义,追加属性和方法特点:1.提起公共的属性和方法2.继承好处和弊端好处:1.复用性2.维护性 弊端: 增加耦合性,降低了子类的独立性格式:public class 子类(派生类) extends 父类(基类/超类){}变量访问特点(就近原则)1.局部2.子类3.父类4.报错(不考虑父类还有父类) 注意:private修改的不能继承super:当前类父类的对象th原创 2021-05-16 15:22:08 · 56 阅读 · 0 评论 -
days10--String
String:java中所有的字符串都是String类的实例创建对象public String() 创建一个空白的字符串对象,不含有任何内容public String(char[] c) 根据字符数组的内容,创建字符串对象 public String(byte[] b) 根据字节数组的内容,创建字符串对象String(byte[] bytes, int offset, int length)根据字节数组的内容,从偏移量(下标)offset开始,获length个字符,创建字符串对象 Str原创 2021-05-16 14:54:23 · 74 阅读 · 0 评论 -
days05--面向对象之封装
面向对象:开发(编程的思想)类和对象类:现实生活中具有相同的属性和行为事务的的抽象(泛指,看不见摸不着)组成: 属性:成员变量(public 数据类型 变量名;)行为:成员方法(public 返回值类型 方法名(参数){})对象:显示生活中具体的存在(实体,看的见摸得着)创建格式: 类名 对象名=new 类名(); 使用成员:1.使用成员变量(赋值取值的操作)格式:对象名.成员变量;2.使用成员方法(调用)格式:对象名.成员方法;类与对象的关系:原创 2021-05-16 13:54:32 · 56 阅读 · 0 评论 -
days04--方法(函数)
方法:对具有独立功能的代码块进行了封装,使其具有特殊的功能定义格式无参格式: public static void 方法名称(){}有参格式: public static void 方法名称(参数){}注意:定义在mian方法之外参数可以有多个,多个参数之间以逗号分割参数的格式为:数据类型 变量名例如:public static void test(int a,int b){}有返回值格式: public static 返回值的数据类型 方法名称(参数){ re原创 2021-05-16 13:21:20 · 45 阅读 · 0 评论 -
days03--数组
数组:(为了解决 频繁定义相同数据类型的变量存储数据)存储多个数据类型相同的存储模型定义: 格式1: 数据类型[] 变量名; 格式2: 数据类型 变量名[]; 注意:[]表示数组的存储空间大小初始化:动态: 手动指定数组长度,系统分配默认值 格式:数据类型[] 变量名=new 数据类型[长度];静态: 手动指定值,系统分配默认长度 格式:数据类型[] 变量名=new 数据类型[]{值1,值2…值n};数据类型[] 变量名={值1,值原创 2021-05-16 12:50:29 · 55 阅读 · 0 评论 -
days02--java语句
语句(程序流程控制)顺序:java默认从上向下依次执行 选择(分支):if-else switch-case 循环:while do-while退出:break继续:continueif语句格式1:单分支 if(条件表达式){ 语句; }格式2:双分支 if(条件表达式){ 语句1; }else{ 语句2; }格式3:多分支 if(条件表达式1){ 语句1; }else if(条件表达式2){ 语句2;原创 2021-05-16 11:32:09 · 45 阅读 · 0 评论 -
days01--java基础
硬件CPU:用来做计算内存:为CPU计算提供资源硬盘:存储数据..软件系统软件:windows linux DOS命令应用软件:qq 微信 ...人机交互图形化界面:上手简单 操作繁琐命令行:需要记住命令win+R然后输入cmd(在c盘用户下),或者在此电脑导航条地址栏输入cmd(当前路径)DOS命令盘符: 切换盘符dir 当前目下所有信息cd 目录1 切换单级目录cd .. 上一级cd . 当前目录cd 目录1\目录2 切换多级目录cls 清屏ex原创 2021-05-16 10:52:44 · 77 阅读 · 0 评论