自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 什么是字符流?为什么会有字符流?

为什么出现字符流?因为字节流操作中文不是特别方便,所以Java就提供字符流;字符流=字节流+编码表;字节流复制文本文件时也会有中文,但是没有问题,原因是最终底层操作会自动进行字节拼接成中文,如何识别中文呢?是因为汉字在存储时无论选择哪种编码存储,第一个字节都是负数。...

2022-06-01 11:42:46 2635

原创 什么是io流,分类是什么?字节流如何写数据?

io流概述:io:是输入/输出(Input/output)流:是一种抽象的概念,是对数据传输的总称,数据在设备间传输称为流,流的本质是数据传输io流:就是用来处理设备间数据传输问题的,应用有:文件复制,文件上传,文件下载io流分类:按数据流向分:输入流:读数据;输出流:写数据按数据类型分类:字节流:字节输入流,字节输出流;字符流:字符输入流,字符输出流(用记事本打开文件,可以读懂就用字符流,如果读不懂就用字节流)字节流写数据:字节流抽象基类:inputStream..

2022-05-28 16:10:48 431

原创 Java中比较运算符instanceof怎么使用?

instanceof 在多态中引出,因为在多态发生时,子类只能调用父类中的方法(编译时类型的方法),而子类自己独有的方法(运行时类型的方法)无法调用,如果强制调用的话就需要向下转型,但是向下转型很有可能无法成功转化,为了判断能否成功转化,就需要 instanceof 先进行一个判断,然后再进行转换操作;instanceof 是一个比较运算符,语法为:引用类型变量(object) instanceof 类(class),简答理解就是判断什么是不是什么什么。功能是:判断前面的对象是否属于后面的类,或者属于其

2022-05-07 11:49:14 654

原创 什么是正则表达式的获取功能?

正则表达式的获取功能:是Pattern类和Matcher类的结合使用那什么是Pattern类和Matcher类呢?Pattern 模式器,是用来封装一个正则表达式Matcher 匹配器,是用来匹配一个正则表达式如何使用?先用模式器封装一个规则,然后将你要匹配的对象放入匹配器,然后用布尔类型接收,用匹配器名.matches();进行判断import java.util.regex.Matcher;import java.util.regex.Pattern;public clas

2022-05-05 15:58:40 165

原创 什么是正则表达式?

正则表达式:正确规则的表达式,是一种独立的定义规则的语法,很多语言都支持,作用,定义一种数据规则,用来校验数据是否符合我定义的规则。在Java 中 可以用字符串来定义正则表达式:如代码public class demo1 { public static void main(String[] args) { String s = "a"; //匹配a这个字符 s = "[a,b,c]";//[] 是我列表中的某一个 s = "\n";//换行符

2022-05-05 15:18:07 1525

原创 为什么Integer包装类用==判断相同数据时有的是true,有的是false?

class Demo { public static void main (String[] args) { Integer i = 100; Integer j = 100; System.out.println( i == j ); Integer i2 = 200; Integer j2 = 200; System.out.println( i2.

2022-05-05 14:32:30 298

原创 数组操作的工具类:Arrays的常用方法

public static String toString(int[] a) 将数组转变为一个漂亮的字符串import java.util.Arrays;class Demo { public static void main(String[] args) { int [] arr = {11,22,33,45,67}; String s = Arrays.toString(arr); System.out.println(s); }

2022-05-05 11:33:29 153

原创 StringBuffer和String如何进行相互转换?

从String转换到StringBuffer:1.通过StringBuffer的构造方法

2022-05-05 11:01:49 9259

原创 什么是集合?集合的相关知识

集合概述:集合类的特点:提供一种存储空间可变的存储模型,存储的数据容量可以发生改变集合类有很多,先看ArrayListArrayList<E>:可以调整大小的数据实现,<E>:是一种特殊的数据类型,泛型。<E>如何使用呢?在出现的地方我们使用引用数据类型替换即可。举例:ArrayList<String>,ArrayList<Student>ArrayList构造方法和添加方法:public ArrayList();-----

2022-04-25 15:59:56 1404

原创 StringBuffer类的概述,及StringJoiner类

StringBuffer类:是线程安全的可变字符序列。因为我们对字符串进行拼接操作,每次拼接,都会构建一个新的String对象,既耗时,又浪费空间,而StringBuffer就可以解决这个问题。StringBuffer类的构造方法:public StringBuffer(): 无参构造方法public StringBuffer(int capacity): 指定容量的字符串缓冲区对象public StringBuffer(String str): ...

2022-04-25 15:57:33 327

原创 Scanner类和String类常用方法介绍

Scanner的概述:用于获取用户的键盘输入Scanner类的hasNextXxx()和nextXxx()方法:hasNextXxx() 判断下一个是否是某种类型的元素,其中Xxx可以是Int,Double等。nextXxx()获取下一个输入项,其中Xxx可以是Int,Double等。案例:键盘输入屏蔽敏感字,奥巴马普京import java.util.Scanner;public class demo5 { public static void main(String...

2022-04-20 11:36:30 487

原创 object类常用方法

Object类概述:object类是层次结构的根类,所有类都直接或者间接的继承自该类object构造方法:public Object(),所以子类的构造方法默认访问的是父类的无参构造方法object类常用方法:public int hashCode();返回该对象的哈希码值。不同对象的,hashCode()一般来说不会相同。但是,同一个对象的hashCode()值肯定相同。可以理解为逻辑地址值。public final Class getClass();返回此 Object 的运行时类,.

2022-04-20 11:02:34 1311

原创 Java中的异常相关概述

异常概述:异常就是程序出现了不正常的情况异常体系:Throwable分为Error和ExceptionException分为RuntimeException和非RuntimeExceptionError:严重问题,不需要处理Exception:称为异常类,它表示程序本身可以处理的问题RuntimeException:在编译期是不检查的,出现问题后,需要我们回来修改代码非RuntimeException:在编译期就必须处理的,否则程序不能通过编译,就更不能正常运行了jvm对异常

2022-04-13 12:31:24 72

原创 什么是Java字节码?

什么是字节码?Java之所以可以“一次编译,到处运行”,一是因为JVM针对各种操作系统、平台都进行了定制,二 是因为无论在什么平台,都可以编译生成固定格式的字节码(.class文件)供JVM使用。因此,也可以看 出字节码对于Java生态的重要性。之所以被称之为字节码,是因为字节码文件由十六进制值组成,而 JVM以两个十六进制值为一组,即以字节为单位进行读取。在Java中一般是用javac命令编译源代码为字 节码文件。对于开发人员,了解字节码可以更准确、直观地理解Java语言中更深层次的东西,比如通过

2022-04-13 09:55:17 3428

原创 基本类型包装类,Integer,int和String相互转换

基本类型包装类概述:将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据常用的操作只一:用于基本数据类型与字符串之间的转换基本数据类型:byte,short,int,long,float, double,char,boolean包装类:Byte,Short,Integer,Long, Float , Double,Character ,BooleanInteger类的概述与使用:包装一个对象中的原始类型int的值public Integer(int value...

2022-04-12 17:58:46 356

原创 冒泡排序及Arrays类的概述和常用方法

Arrays类包含用于操作数组的各种方法,最常用的有:public static String toString(int [] arr) 返回指定数组的内容的字符串表示形式public static void sort(int [] arr) 按照数字顺序排列指定的数组用法:Arrays.toString(arr); Arrays.sort(arr);工具类的设计思想:构造方法用private修饰,使其不能创建对象成员用 pub...

2022-04-12 15:47:27 146

原创 什么是内部类?

内部类概述:内部类就是在一个类中定义一个类,比如在一个类A的内部定义一个类B,类B就被称为内部类内部类定义格式: public class 类名{ 修饰符 class 类名{ } }内部类的访问特点:内部类可以直接访问外部类成员,包括私有成员。外部类要访问内部类的成员,必须创建对象内部类在类中定义的位置不同分为:成员内部类(在类的成员位置),局部内部类(在类的局部位置)成员内部类,外界如何创建对象使用?格式:外部类名.内部类名 对象名 = 外部对...

2022-04-09 09:46:08 1054

原创 JVM方法区,堆和方法区是怎样的关系,方法区内部的结构又是怎样的?

方法区是堆上的一个概念,具体的落地实现是永久代或者 元空间,它们都统称方法区。元空间的本质和永久代类似,都是对JVM规范中方法区的实现。 不过元空间与永久代最大的区别在于:元空间不在虚拟机设置的内存中,而是使用本地内存创建对象各数据区域的声明:person(方法区) per(栈) = new person();(堆)方法区的理解:元空间、永久代是方法区具体的落地实现。方法区看作是一块独立于Java堆的内存空间,它主要是 用来存储所加载的类信息的。1.方法区(Method Area)同堆...

2022-04-07 14:39:05 2158 2

原创 如何理解Java中的接口?类名,抽象类名,接口名作为形参和返回值?

接口:为了体现事物功能的扩展性,Java中就提供了接口来定义这些额外功能,并不给出具体实现,将来哪些事物需要被扩展,只需要这部分事物把这些额外功能实现即可。接口的特点:接口用关键字interface表示 格式: interface 接口名 {}类实现接口用implements表示 格式: class 类名 implements 接口名 {}接口不能实例化,如果非要实例化,那么按照多态的方式来进行实例化,通过类对象实例化,这叫接口多态。多态的前提:有继承或实现关系,有方法重写,有父(类/接口)

2022-04-07 11:43:34 1095

原创 如何理解多态?如何理解抽象类?

多态:同一个对象,在不同时刻表现出来的不同形态举例:猫;猫是猫类:猫 cat = new 猫();猫是动物类:动物 animal = new 猫();这里猫在不同时刻表现出来了不同的形态,这就是多态多态的前提:要有继承或实现关系,要有方法重写,要有父类引用指向子类对象。多态中成员访问特点:成员变量:编译看左边,执行也看左边成员方法:编译看左边,执行看右边构造方法:创建子类对象的时候,会访问父类的构造方法,对父类的数据进行初始化。静态方法:编译看左边,运行看左边(静态方法不

2022-04-07 09:07:54 659

原创 如何使用递归解决不死神兔问题?

递归:方法自定义中调用方法本身的现象递归的注意:需要有出口,不能形成死递归,递归的次数也不能过多,否则会造成内存溢出不死神兔问题:(斐波那契数列)有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第二十个月的兔子对数为多少?分析兔子对象的数据得到:1 , 1 , 2 , 3 , 5 , 8 ,13, 21...则规律为:从第三天开始,每一天兔子对数为前两天之和递归解决:除非是第一天和第二天,否则为前两天之和public cla

2022-04-03 17:47:25 900

原创 什么是修饰符?

修饰符分为:权限修饰符和状态修饰符权限修饰符:private(私有的),默认,protected(受保护的),public(公共的)。private:只能在同一个类中才可以访问默认:只有同一个类中,或者同一个包中子类和无关类可以访问到protected:同一个类中,同一个包中的子类和无关类,或者不同包的子类可以访问到public:同一个类中,同包中的子类和无关类,不同包的子类和无关类均可以访问到简洁如图所示:修饰符 同一个类中 同一个包中子类和无关类 不同包的子

2022-04-01 18:53:45 4458

原创 Java中继承该如何使用?

继承的格式:格式:public class 子类名 extends 父类名{ }范例:public class Zi extends Fu{ }Fu:是父类,也被称为基类,超类Zi:是子类,也被称为派生类继承中子类的特点:子类可以有父类的内容,子类还可以有自己特有的内容继承的好处:提高了代码的复用性(多个类相同的成员可以放入同一个类中)。 提高了代码的可维护性(如果方法的代码需要修改,修改一处就可以了)。继承的弊端:继承让两个类之间产生了关系,类的耦合性增强了,当父类发生变化时子

2022-04-01 17:29:48 1260

原创 Java中new一个对象的过程中发生了什么?

​​​​​​java在new一个对象的时候,首先会查看对象所属的类有没有被加载到内存,如果没有的话,就会先通过类的全限定名(就是类名全称,带包路径的用点隔开,如java.long.String)来加载。加载并初始化类完成后,再进行对象的创建工作。如果是第一次使用该类,这样的话new一个对象就可以分为两个过程:1,加载并初始化类 2,创 建对象。一、加载并初始化类java是使用双亲委派模型来进行类的加载的双亲委托模型的工作过程是:如果一个类加载器(ClassLoader)收到了类加载的请求..

2022-03-29 13:49:19 324

原创 private关键字,this关键字,static关键字,及构造方法概念

private关键字:private(私有的),是一个权限修饰符,可以修饰成员变量,成员方法,而被private修饰的私有成员,只能在本类中访问,无法通过对象名.成员变量名=值来访问,除非我们提供公共的get,set方法来让它访问的这个成员变量this关键字:可以将它看成类的一个对象,为什么会有它,因为我们定义的局部变量与成员变量同名时,name=name,就近原则匹配时就会导致输出的结果为Null,而使用this就可以区分this.name为成员变量,name为局部变量。this就相当于当前类的一个对

2022-03-29 12:34:36 874

原创 如何理解类与对象呢?

首先我们要知道什么是类,什么是对象:类:就是对具有相同特征事物属性与行为的抽象的集合对象:就是这一类事物的具体体现简单来讲:我们需要描述一个学生的相关事物,比如学生拥有姓名,拥有学号,年龄,性别等等,学生可以学习,可以吃饭,可以睡觉等等这里,学生就相当于我们定义的一个类(学生类),而学生拥有的姓名,学号等,就属于属性,我们用成员变量就可以定义,而学生们要吃饭,睡觉就属于行为,我们就需要用成员方法来实现。成员变量:就是在类中方法外的变量,和定义变量方法相同。这里我们需要直到成员变量与局

2022-03-29 11:42:25 344

原创 数组的概述及内存图

数组概念:数组是存储同一种数据类型多个元素的集合一维数组定义格式:数据类型 [] 数组名;或者 数据类型 数组名 []数组的初始化:初始化就是给数组中元素分配内存空间,并赋值。因为Java中数组必须先初始化,然后才能使用。初始化分两种:一种是静态初始化:给出初始化的值,让系统决定长度。格式为,数据类型[] 数组名 = {元素1,元素2,…}; 如(int [ ] arr ={1,3,4,5,6};),另一种是动态初始化:只指定长度,由系统给出初始值。格式为,数据类型[] 数组名 ...

2022-03-28 16:16:35 402

原创 程序在计算机中是如何执行的?

public class HelloWorld { public static void main(String[] args) { int a = 5; int b = 3; intsum = a + b; System.out.println(sum); }}首先这个程序保存在哪里?我们简单的认为是保存在桌面,其实我们更应该想象它保存在电脑的那个部分。一台计算机包含下面五个基本部分:1,运算器 2,控制...

2022-03-23 14:25:21 5178

原创 位运算符基本用法及循环语句格式

位运算符:&(与),|(或),^(异或),~(按位取反),<<(左移),>>(右移),>>>(无符号右移)注意:位运算是直接对二进制补码进行与运算,运算效率高结论:&:有0则0 ^:相同则0,相反则1。(特点:一个数据被另一个数据位异或两次,该数本身不变。自己异或自己为0)|:有1则1 ~:按位取反,0变1,1变0,符号位也包含在内<<:空位补0,被移除的高位丢弃(运算结论:把<&lt...

2022-03-23 13:21:10 482

原创 jdk配置,基本语法,Scanner,Math,方法及数组

Java基础:1.Java的技术分支JavaSE:基础和核心Java EE:企业及开发 jsp/ServletJavaME:通讯,游戏2.jdk的配置我的电脑右键属性------高级------环境变量--------系统变量新建2个:JAVA_HOME:jdk安装路径CLASS_PATH:.修改1个:path:在path前添加jdk安装路经\bin;如:D:\dev\jdk1.8.0_102\bin;如何测试jdk配置成功?Javac:编译指令J

2022-03-19 17:42:59 217

原创 常量,变量,进制及运算符

Java学习自用

2022-03-15 11:32:52 714

原创 快捷键,常用DOS命令,及标识符命名规则

Java小白学习自用

2022-03-15 10:09:55 1888

空空如也

空空如也

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

TA关注的人

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