自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 System

概述System系统类,主要用于获取系统的属性数据和其他操作,构造方法私有的方法名 说明 static void arraycopy(...) 复制数组 static long currentTimeMillis(); 获取当前时间,返回的是毫秒值 static void gc(); 建议JVM赶快启动垃圾回收器回收垃圾 static void exit(int status); 退出JVM,如果参数是0表示正常退出JVM,非0表示异常退出JVM a

2022-02-11 23:00:17 220

原创 SimpleDateFormat类

概述SimpleDateFormat是一个以与语言环境有关的方式来格式化和解析日期的具体类进行 格式化(日期->文本)解析(文本->日期)常用的时间模式字母字母 日期或事件 示例 y 年 2019 M 年中月份 08 d 月中天数 10 H 1天中小时数(0-23) 22 h 1天中小时数(0-11) 10 m 分钟 16 s 秒 59 S

2022-02-11 22:24:53 179

原创 Calendar类

Calendar类概述Calendar提供了获取或设置各种日历字段的方法构造方法protected Calendar():由于修饰符是protected,所以无法直接创建该对象其他方法:方法名 说明 static Calendar getInstance() 使用默认时区和区域获取日历 void set(int year,int month,int date,int hourofday,int mintue,int second) 设置日历的年、月、日、时、

2022-02-11 21:59:17 115

原创 Date类

Date类Date类表示特定的瞬间,精确到毫秒。Date类中的大部分方法都已经被Calender类中的方法所取代时间单位:1秒=1000毫秒1毫秒=1000微妙1微妙=1000纳秒toString()以字符串的形式返回当前的时间getTime()返回从1970年1月1日到现在时间的毫秒数a.after(b)返回判断a时间是否在b时间之后a.before(b)返回判断a时间是否在b时间之前a.compareTo(b)比较a的毫秒数多还是b的毫秒数多

2022-02-11 21:58:37 255

原创 BigDecimal类

BigDecimal前言double和float类型采用的都是近似值的存储方式比如double d1 = 1.0;double d2 = 0.9;System.out.println(d1-d2);结果是0.09999999999999998这是存在着一定的误差,是允许误差存在的,但是有一些行业精度要求比较高度的时候,就需要使用BigDecimal概述位置:java.math包中作用:精确计算浮点数创建方式:BigDecmail bd = new BigD

2022-02-10 16:52:29 239

原创 StringBuffer类和StringBuilder类

可变字符串StringBuffer:可变长字符串,JDK1.0提供,运行效率慢,线程安全StringBuilder:可变长字符串,JDK5.0提供,运行效率快,线程不安全与String类相比的优势:1.效率高2.节省内存StringBuffer类append()append():追加可以往这个缓冲区里添加任何类型的属性 StringBuffer sb = new StringBuffer(); sb.append("java"); System.out.p

2022-02-10 16:18:25 248

原创 String类(Java)

String类概述字符串是常量,创建之后不可改变字符串字面值存储在字符池中,可以共享,内存分为栈,堆,方法区,字符池就在方法区里面,字符池使用类似于整数缓冲区,也是可以进行共享,但是不是提前加载好的,是需要赋值创建的String s = "Hello";产生一个对象,在字符串池中String s = new String("Hello");产生两个对象,堆、池各存储一个方法length()public int length():返回字符串的长度(空格也算一个字符)

2022-02-10 00:55:50 172

原创 包装类(Java)

包装类什么是包装类?基本数据类型所对应的引用数据类型,将基本类型的值包装在一个对象中,从栈放入到了堆里面Object可统一所有数据,包装类的默认值是null基本数据类型 包装类型 byte Byte short Short int Integer long Long float Float double Double boolean Boolean char Character 类型转换与装箱、拆箱

2022-02-09 14:58:34 83

原创 Object类

Object类概述超类、基类、所有类的直接或间接父类,位于继承树的最顶层任何类,如没有书写extends显示继承某个类,都默认直接继承Object类,否则为间接继承Object类中所定义的方法,是所有对象都具备的方法Object类型可以存储任何对象作为参数,可以接受任何对象作为返回值,可返回任何对象getClass()public final Class<>getClass(){}返回引用中存储的实际对象类型应用:通常用于判断两个引用中

2022-02-08 14:43:08 49

原创 内部类(Java)

内部类内部类的分类1.成员内部类2.静态内部类3.局部内部类4.匿名内部类什么是内部类概念:在一个类的内部再定义一个完整的类 class Body{ class Head{ } }//head属于body的一部分特点:​ 1.编译之后内部类可生成独立的字节码文件​ 2.内部类可以直接访问外部类的私有成员,不破外外部类的封装性​ 3.可为外部类提供必要的内部功能组件(body和head)...

2022-01-30 19:03:29 599

原创 异常(Java)

异常概述实际工作中,遇到的情况不可能是非常完美的。比如:你写的某个模块,用户输入不一定符合你的要求、你的程序要打开某个文件,这个文件可能不存在或者文件格式不对,你要读取数据库的数据,数据可能是空的等。我们的程序再跑着,内存或硬盘可能满了...软件程序在运行过程中,非常可能遇到刚刚提到的这些异常问题,我们叫异常,英文是:Exception,意思是例外。这些,例外情况,或者叫异常,怎么让我们写的程序做出合理的处理。而不至于程序崩溃异常指程序运行中出现的不期而至的各种状况。如:文件找不到(想用这个

2022-01-25 15:37:40 274

原创 内部类(Java)

内部类概述内部类就是在一个类的内部再定义一个类,比如,A类中定义一个B类,那么B类相对A类来说就称为内部类,而A类相对B类来说就是外部类1.成员内部类2.静态内部类3.局部内部类4.匿名内部类实际操作成员内部类1.内部类的操作2.内部类的实例化外部类类名.内部类类名 内部类对象 = 外部类对象名.new 内部类类名();3.内部类可以获得外部类的属性和方法包括私有属性和方法静态内部类1.stati...

2022-01-23 16:33:30 236

原创 接口(Java)

接口概述普通类:只有具体实现抽象类:具体实现和规范(抽象方法)都有接口:只有规范 自己无法写方法 专业的约束 约束和实现分离:面向接口编程接口就是规范,定义的是一组规则,体现了现实世界中“如果你是。。。则必须能。。。”的思想,如果你是天使,则必须呢个救济人间,如果你是汽车,则必须能跑。如果你是好人,则必须干掉坏人,则必须干坏事接口的本质是契约,就像我们人间的法律一样,制定好后大家都遵守OO(面向对象)的精髓,是对对象的抽象,最能体现着一点的就是接口。为什么我们讨论设计模式都只

2022-01-23 16:31:24 172

原创 抽象类(Java)

抽象类概述abstractabstract修饰符可以用来修饰方法也可以修饰类,如果修饰方法,那么该方法就是抽象方法;如果修饰类,该类就是抽象类抽象类中可以没有抽象方法,但是有抽象方法的类必须声明为抽象类抽象类,不能使用new关键字来创建对象,它是用来让子类继承的抽象方法,只有方法的声明,没有方法的实现,它是让子类来实现的子类继承抽象类,那么就必须实现抽象类没有实现的所有抽象方法,否则该子类也要声明为抽象类思考抽象类不能new对象,那么它存在构造器吗有构造器

2022-01-23 12:47:24 2400

原创 instanceof和类型转换

instanceof与类型转换instanceof的作用检测引用对象所指向的类是否和检测类有继承关系编译通过的条件就是引用对象所指向的类与检测类是否有继承关系实际操作 A extends B C extends C B X = new A(); X instanceof B //返回值为ture X instanceof C //返回值为false类型转换1.父类引用指向子类的对象2.把子类转换为父类,向上转型,自动转型3.把父类转换

2022-01-21 18:29:06 148

原创 多态(Java)

多态概述多态可以实现程序的动态编译,程序的类型只有在执行过程中才能被确定,在大型程序中是有可扩展性一说的现实事物经常会体现出多种形态,如学生,学生是人的一种,则一个具体的同学张三既是学生也是人,即出现两种形态多态体现为父类引用变量可以指向子类对象在使用多态后的父类引用变量调用方法时,会调用子类重写后的方法即同一方法可以根据发送对象的不同而采用多种不同的行为方式一个对象的实际类型是确定的,但可以指向对象的引用的类型有很多多态中成员的特点 1.多态成员

2022-01-21 14:59:00 315

原创 继承(Java)

继承定义继承的本质是对某一批类的抽象,从而实现对现实世界更好的建模比如说Person是父类,YellowPerson,WhitePerson,BlackPerson就是子类extends的意思是”扩展“。子类是父类的扩展,子类可以继承父类所有的属性和方法,并且可以拥有自己的属性和方法JAVA中类只有单继承,没有多继承,一个父类可以有多个子类,但是一个子类只能有一个父类父类中private修饰的属性和方法,子类不能继承继承是类和类之间的一种关系,除此之外,类和类之间

2022-01-20 02:00:25 483

原创 封装(Java)

封装详解定义private该露的露,该藏的藏我们程序设计要追求”高内聚,低耦合“。高内聚就是类的内部操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。封装(数据的隐藏)通常,应禁止直接访问一个对象中数据的实际表示,而应通过操作接口来访问,这成为信息隐藏。记住这句话:属性私有,get/set实际操作在类中先封装属性,然后书写get/set方法get和set的方法,get是返回变量,set是修改变量使用快捷键alt+i.

2022-01-19 23:05:07 246

原创 内存分析 Java

创建对象内存分析1.方法区中加载类中的方法以及静态方法2.创建的对象的地址,以及赋值之后的属性和调用其他类其他类的方法都在堆中,这时对象名出现在栈中,作为引用对象名指向堆中该对象的地址(1).最开始创建的时候 name age都是通过默认构造器的初始化是null 和 0(2).然后在主类,main()方法中通过dog.name ...给对象的属性赋值,通过dog.shout();调用在Pet类中的shout()方法(3).Java编译时就是通过栈中的引用变量名的地址,找到堆.

2022-01-18 14:37:05 42

原创 构造器详解

构造器详解使用new关键字创建对象使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化以及对类中构造器的调用类中构造器类中的构造器也被成为构造方法,是在进行创建对象的时候必须要调用的。并且构造器有以下两个特点:1.必须和类的名字相同2.必须没有返回类型,也不能写voidPerson p = new Person();在new Person类的对象的时候调用了Person()这个方法,这个就是构造器方法,也就是构造器若没有写构造器,系统会自动

2022-01-17 23:34:40 179

原创 面向对象(Java)

面向过程&面向对象面向过程思想:步骤清晰简单,第一步做什么,第二部做什么...面对过程适合处理一些较为简单的问题面向对象思想物以类聚,分类的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考,最后,才对某个分类下的细节进行面向过程的思索。面向对象适合处理复杂的问题,适合处理需要多人协作的问题属性和方法构成了类**对于描述复杂的事物,为了从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然

2022-01-16 14:53:00 60

原创 稀疏矩阵(Java)

稀疏数组当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组。稀疏数组的处理方式是:记录数组一共有几行几列,有多少个不同值把具有不同值的元素和行列及值记录在一个小规模的数组中,从 而缩小程序的规模如下图:左边是原始数组,右边是稀疏数组应用创建一个11*11的数组,0:没有数组,1:黑棋,2:白棋 public class SparseArray { public static void main(String[...

2022-01-15 16:24:38 815

原创 (Java)Arrays类常用方法

Arrays类数组的工具类java.util.Arrays由于数组对象本身并没有什么方法可以供我们调用,但API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行一些基本的操作。查看JDK帮助文档Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名进行调用,而“不用”使用对象来调用(注意:是“不用”而不是“不能”)具有以下常用功能:给数组赋值:通过fill方法int[] a;第一种:Arrays.fill(a,3).

2022-01-13 23:15:57 342

原创 数组(Java)

数组数组的定义1.数组是相同类型数据的有序集合2.数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成3.其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们数组的声明创建变量的类型 变量的名字 = 变量的值;数组的类型(...[]) 数组的名字 //定义;首先必须声明数组变量,才能在程序中使用数组,下面是声明数组变量的语法:dataType[] arrayRefVar; 首选方法daraType arrayRefVar[]

2022-01-13 22:25:07 42

原创 数组(Java)

数组数组的定义1.数组是相同类型数据的有序集合2.数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成3.其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们数组的声明创建变量的类型 变量的名字 = 变量的值;数组的类型(...[]) 数组的名字 //定义;首先必须声明数组变量,才能在程序中使用数组,下面是声明数组变量的语法:dataType[] arrayRefVar; 首选方法daraType arrayRefVar[]

2022-01-12 16:06:25 42

原创 Java内存

Java内存堆1.存放new的对象和数组2.可以被所有的线程共享,不会存放别的对象引用栈1.存放基本变量类型(会包含这个基本变量类型的具体数值)2.引用对象的变量(会存放这个在堆里面的具体地址)方法区1.可以被所有的线程共享2.包含了所有的class和static变量图形解释1.声明数组int [] array = null; 这时是在栈中2.创建数组:array =new int [10]; 这时是在堆中3

2022-01-12 11:56:59 71

原创 计算器(Java)(简单)

import java.util.Scanner;/** * @author JenKinRJX * @create 2022-01-10-17:37 */public class Calculator { public static void main(String[] args) { while(true) { int i = 0, j = 0; Scanner s = new Scanner(System.in);.

2022-01-10 18:59:24 139

原创 递归方法(Java)

递归方法描述:A方法调用B方法递归就是:A方法调用A方法,调用自己本身利用递归可以用简单的程序来解决一些复杂的问题。它通常把一个大行复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大减少了程序的代码量,递归的能力在于用有限的语句来定义对象无限的集合代码解释: public class recursion { public static void main(String[] ar.

2022-01-10 17:35:51 75

原创 可变参数(Java)

从JDK1.5开始,Java支持传递同类型的可变参数给一个方法在方法声明中,在指定类型后加一个省略号(...)一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必选在它之前声明它的本质是一个数组类似于命令行传参的 args[]数组 public class variableParameters { public static void main(String[] args) { variableParameters x = ne

2022-01-10 00:36:50 125

原创 Scanner

Scanner引用import java.util.Scanner基本语法Scanner s = new Scanner(System.in);通过Scanner类的next()和nextLine()方法获取输入的字符串,在读取前 使用hasNext()与hasNextLine()判断是否还有输入的数据next()方法1.一定读取到有效字符后才可以结束输入2.对输入有效字符之前遇到的空白,next()方法会自动屏蔽3.只有输入有效字符后才将其后面输入的空白作为分隔符或

2022-01-08 16:49:06 333

原创 JavaDoc

JavaDocJavaAPIJavaAPI:Java Platform SE 8/JavaDocJavaDoc命令就是生成我们自己项目的API参数信息@author 作者@version 版本@since 指明需要最早使用的JDK版本、@param 参数名@return 返回值情况@throws 异常抛出情况打开JavaDocShow in Explorer 打开包文件夹用cmd打开包文件文件输入javadoc ..

2022-01-08 01:18:34 178

原创 Java运算符

运算符一元运算符 二元运算符 三元运算符运算符是一元、二元还是三元,要看它要求有几个数参加运算比如"++"运算符,只需要一个数据单元参加运算,如++a,它就是一元运算符;而"+"、"-"等运算符,如a+b,要求有两个数据单元参加运算,它就是二元运算符;"?:"运算符要求三个运算单元,如(ab)?c:d,它就是三元运算符。//判断x的值是否大于5y=x>5?x:-x; 如果大于5则y=x,不然y=-x;逻辑运算符与&& 或|| 非!短.

2022-01-07 22:57:23 244

原创 数据类型Java

强类型语言要求变量使用十分规范,变量都是先定义再使用Java弱类型语言VB JS“12”+3 可以是 15也可以是“123”基本类型(primitive type)整数类型byte 1字节short 2字节int 4字节long 8字节(long类型要在数字后面加个Llong num = 10L;)浮点类型float 4字节(float类型需要在数字后面加个Ffloat num1 = 10.29f;)..

2022-01-05 21:04:26 116

原创 IDEA(我自己看的)

IDEA创建不赘诉这里要注意.idea和.iml文件都是IDEA工程特有的,类似于Eclipse工程下的.settings,.classpath,.project等moduleModule(模块)Eclipse中的workspace相当于IDEA中的ProjectEclipse中的Project相当于IDEA中的moduleProject是一个工程,如果这个工程比较大,可以在这个工程下创建多个modulemodule删除module删除先右..

2022-01-05 18:36:40 45

原创 编译型 解释型

Java程序运行机制编译型编译型:直接翻译,有负责翻译的程序(例如,中文小说整本翻译为英文)1.执行速度快、2.对操作系统要求比较低操作系统,c,c++解释型解释型:写一句,翻译一句,如果要往回去看前面的,还需要回头重新翻译网页 服务器对速度要求不高,边进行边解释JavaS python程序运行机制源文件通过Javac编译成class文件,再进入JVM的类装载器,通过字节码校验器,然后进行解释器,边解释给操作系统边运行...

2022-01-04 23:28:27 487

原创 JDK JRE JVM

JDK JRE JVMJDKJDK:Java Development Kit Java开发者工具JREJRE:Java Runtime Environment Java运行环境JVMJVM:Java Virtual Machine Java虚拟机用硬件软件都可以实现因为JVM,Java可以实现跨平台Wirte once Run anywhere...

2022-01-04 23:00:57 201

原创 DOS学习

DOS命令学习开启DOS命令1.win+R快捷键输入cmd2.直接在程序列表中寻找3.在任意的文件夹下面,按住shift键+鼠标右键点击,在此处打开命令行窗口4.资源管理器的地址栏前面加上cmd路径5.以管理员方式运行常用的DOS命令 //盘符切换 D:C: //查看当前目录下的所有文件 dir //切换目录 cd //返回上一级 cd.. //进入文件 cd 文件名 //盘符切换 cd/d //清理屏幕 cls //退出终.

2022-01-04 11:39:42 227

原创 MarkDOWN学习

MARKDOWN了解 typora快捷键学习

2022-01-04 01:21:42 126

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除