JAVA
JAVA基础
weixin_43723892
这个作者很懒,什么都没留下…
展开
-
serialVersionUID
一、为什么设置serialVersionUIDserialVersionUID适用于java序列化机制。JAVA序列化的机制是通过判断类的serialVersionUID来验证的版本一致的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID于本地相应实体类的serialVersionUID进行比较。如果相同说明是一致的,可以进行反序列化,否则会出现反序列化版本一致的异常,即是InvalidCastException。二、如何自动生成serialVersionUID鼠标置于类原创 2021-09-27 11:20:17 · 51 阅读 · 0 评论 -
IDEA下载与安装
IDEA下载官方下载地址点击进入官方下载地址后可以根据自身电脑版本选择下载Ultimate/Community版本,Ultimate版本功能更加齐全。IDEA安装双击下载好的安装包,安装包开始自动解包点击【next】,选择安装位置下一步:选择32位/64位安装;不建议选择与文件建立链接;不建议下载JRE,下载并安装JVM时已经包含了JRE点击【finish】完成安装...原创 2020-08-22 20:39:50 · 1141 阅读 · 0 评论 -
异常
1、什么是异常(Exception)异常是运行时发生的错误;java命令代码中的语法错误不是异常,而是编译错误;javac命令2、异常的层次结构Object Throwable(可抛出的) Error(jvm层面)原创 2020-08-03 21:14:43 · 89 阅读 · 0 评论 -
正则表达式
1、正则表达式用来对字符串的格式进行匹配的表达式用途:格式验证字符串替换字符串的查找2、正则表达式的语法[abc]:匹配[]中的任意单字符,例如[a-zA-Z0-9_][^abc]:除abc之外的任意单字符X?:0到1次X*:0到多次X+:1到多次X{n}:固定n次X{n,}:至少n次X{n,m}:n到m次x|y:x或y():定义一个捕获项.:任意一个字符\d:数字\D:非数字3、String类中使用正则表达式的方法matches()split()repla原创 2020-08-03 21:05:18 · 59 阅读 · 0 评论 -
lang包
1、lang包lang包提供了几乎每个应用程序都会用到的类 Object,Math,包装类,System,String等这个包在使用时自动导入,因此不需要手动的使用import导入2、System类该类不能被实例化;这个类提供了很多类属性和类方法用于实现每个程序最基本的操作;System.out:标准输出流System.err:错误信息输出流System.in:标准输入流System.exit(0):退出java虚拟机System.currentTimeMillis():获得当原创 2020-08-03 21:02:07 · 388 阅读 · 0 评论 -
多态
1、多态同一类事物拥有不同的形态没有继承就没有多态2、多态指的是子类对象的引用赋给父类引用3、使用多态时,java中有两种数据类型,编译时类型和运行时类型Animal a=new Dog();编译时类型:定义变量的那个类型,在编译期就能确定,它可以确定能使用哪些方法;运行时类型:运行代码时确定的类型;在运行时才能确定,编译期无法确定,通过它能决定运行时执行的具体方法;4、多态中的类型转换(造型)向上转型(upcast):子类对象可以直接赋给父类的引用向下转型(downcast):将父类原创 2020-08-03 20:53:14 · 106 阅读 · 0 评论 -
继承
1、继承继承是面向对象语言的高级特征,它的作用是简化类的设计,让子类可以直接拥有父类的属性和方法,而无需重复定义;子类是一个特殊的父类2、Java中的继承Java中只支持单继承,不支持多继承,但支持多层继承在继承关系中,子类继承父类,子类和父类都是相对的概念;我们可以使用is来判断是否可以使用继承,即子类is一个特殊的父类继承语法是:class 子类名 extends 父类名{}3、重写方法(Override)在继承关系下,子类覆盖父类的方法;(方法名相同,参数相同,返回值类型小于或等于父原创 2020-08-03 20:41:54 · 88 阅读 · 0 评论 -
面向对象
1、编程语言的发展阶段机器语言汇编语言高级语言面向对象语言:更符合人类的思维,就是对现实世界的模拟2、面向过程与面向对象的区别面向过程 解决一个问题时,先列举出各个步骤面向对象 先将问题域中的对象找出来,并确定之间的关系优点:复用性更好;开发复杂项目时更具有优势;3、面向对象中的概念对象(Object):一切具体的事物都是对象 静态特征: 动态行为:类(class):类是具有相同属性(静态特征)和行为的一组对象的抽象表示4、类与对象的关原创 2020-08-03 20:38:44 · 76 阅读 · 0 评论 -
Java中的数组
1、数组是一个引用的数据类型2、数组是一个集合:一个数组可以同时存储多个相同数据类型的数据3、如何定义一个数组数据类型[] a;//声明int[] a=new int[5];//分配空间4、数组的操作创建数组时需要先为数组开辟空间(指定长度),数组的长度一旦确定,不能更改,我们可以通过下标来访问数组中的元素 下标从0开始,一直 到数组长度-15、通过length可以获得数组的长度:length属性是只读的,只可以读取,不可以更改。6、如果我们在访问数据的元素时,使用了一个不在有效范围的下标原创 2020-08-03 20:32:23 · 94 阅读 · 0 评论 -
Java中的控制语句
控制语句的执行结构顺序结构分支结构循环结构分支结构的语法单分支: …… if(布尔值){ 代码段 } …… 说明:单分支指的是在程序中加入一段可能执行的程序段,根据条件来判断是否执行代码段双分支 if(布尔值){ }else{ } 说明:一定会执行其中的一个分支多分支 if(){ …… }else if(){ …… }else{ …… } 注意:else if 可以有多个嵌套分支switch选择结构switch(变量){ case 值1原创 2020-08-03 20:21:52 · 142 阅读 · 0 评论 -
Java运算符
关键字在Java中有特殊含义的单词,每一个关键字都有特殊的含义,在编译期,编译器会对这些关键字做特殊处理;Java中的关键字都是小写的;标识符(起名)凡是可以起名的地方都是标识符;(类名,变量,方法)标识符的命名规则由26个英文字母大小写,数字:0-9,_或$组成不可以数字开头不可以使用关键字和保留字,但能包含关键字和保留字Java中严格区分大小写,长度不限制标识符不能包含空格可以使用中文,但不建议建议命名要有意义,驼峰命名法:myName myUserNameJava中的命原创 2020-08-03 20:18:19 · 62 阅读 · 0 评论 -
JAVA基础
编程语言的本质程序=数据结构+算法编程语言的发展机器语言汇编语言高级语言 面向过程的编程语言 面向对象的编程语言为什么选择javac:对计算机中最基本的单元进行操作,适合做操作系统c++:大型网游java:网站后台,大数据javascript:网页编程python:科学计算,人工智能java语言的特点面向对象跨平台:jvm;有代价 用java开发一个程序 window:jre linux:jre总结: java开发出来的程序,不能直接运行在操作系统上j原创 2020-08-03 20:13:31 · 70 阅读 · 0 评论 -
反编译
什么是编译将高级语言(JAVA、C、C++等)转换成低级语言(汇编语言、机器语言)的过程叫做编译什么是反编译反编译的过程与编译的过程正好相反,即将编译完成的低级语言还原回高级语言。例如在JAVA中,将编译完成的.class文件还原回.java文件的过程叫做反编译。JAVA反编译工具CFRCFR下载到官网下载CFR使用CFR进行反编译1、使用命令行的方式:java -jar CFR的安装路径 想要反编译文件的路径 [–反编译后文件的保存路径]2、另外可以使用 java -jar原创 2020-07-30 16:58:15 · 3541 阅读 · 4 评论 -
JDK、JRE和JVM的关系
原创 2020-07-29 10:48:24 · 61 阅读 · 0 评论 -
JDK下载安装与环境配置
JDK下载安装与环境配置JDK下载去Oracle官网下载JDK安装JDK点击下载的.exe文件进行安装,除了修改JDK安装路径,其它一路按【下一步】。环境配置1、右键【此电脑】->选择【属性】->选择【高级系统设置】->选择【环境变量】2、新建一个系统变量->变量名"JAVA_HOME",变量值“JDK的安装路径”3、选中系统变量中的【PATH】,点击【编辑】,点击【新建】,然后输入"%JAVA_HOME%\bin",点击确定,再次点击【新建】,然后输入"%JAV原创 2020-07-29 10:16:28 · 81 阅读 · 0 评论