Java
文章平均质量分 54
兼顾Java基础与编码实战,逐步深入Java基础、进阶编码各个部分,培养程序编码思维,提升开发能力
AlieNeny
孝、信、谦、大、炼、勇、恩、帮
展开
-
Java学习笔记(49)——网络
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、网络1.1 概述查询本级网络基本情况win + r,输入 cmd 输入命令: ipconfig尝试连接本局域网内的其他IPping 192.168.4.xxx 如果ping不通,关闭防火墙(注意在公开网络环境下,存在隐患)1.2 Socket网络通信...原创 2021-03-17 09:26:59 · 174 阅读 · 0 评论 -
Java学习笔记(48)——生产者、消费者模型
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、生产者、消费者模型1.1 概述生产者和消费者是线程间通信的一种模型,这个问题是线程模型中的一个经典问题:生产者和消费者在同一时间段内共用同一段存储空间,生产者往存储空间中添加产品,消费者从存储空间中取走产品,当存储空间为空时,消费者阻塞,当存储空间满时,生产者阻塞。这里我们可以举一个简单的例子,上菜!厨师利用原材料做好一份美味的菜肴————生产者 制造数据厨师将做好的菜肴原创 2021-03-01 17:44:25 · 188 阅读 · 0 评论 -
Java学习笔记(47)——多线程
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、多线程1.1 多线程数据访问冲突在实际的开发过程中,对于一个简单业务,单线程就能很好的解决问题。然而,现实情况是我们往往需要多线程去完成一个业务逻辑,而多线程的并行操作就会带来一些问题,例如多线程的数据访问冲突。多线程的数据访问冲突:多个线程,共享访问数据,在不加任何保护措施的情况下,易产生脏数据 一个线程访问到修改的一半的数据,称为脏数据1.2原创 2021-02-23 11:45:31 · 123 阅读 · 1 评论 -
Java学习笔记(46)——线程
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、线程1.1 概述进程、线程、操作系统的关系。进程 操作系统中,并行执行的任务线程 进程内部,并行执行的任务操作系统、进程、线程之间的关系可简单描述如下:二、创建线程2.1 概述创建线程,主要包括以下两种方式:继承 Thread 实现 Runnable 需要了解的是,在JVM虚拟机启动后,会自动启动一个原创 2021-02-23 10:32:16 · 145 阅读 · 1 评论 -
Java学习笔记(45)—— IO——Reader / Writer
是这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、Reader / Writer1.1 概述字符流的抽象父类 1.2 方法 write(int c) int四个字节中,末尾两个字节是 char 类型字符数据,只处理末尾两个字节的输出 write(char[],from,length) 输出from开始的length个字符 write(String s) 输出字符串的全部字符二、InputStreamReader/原创 2021-02-18 17:47:43 · 121 阅读 · 2 评论 -
Java学习笔记(44)—— IO——Stream
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、Stream1.1 概述Stream(流)——字节数据的读写,抽象成数据在管道中流动 Stream是单方向的:输入流,只能用来读取数据 输出流,只能用来输出数据 数据只能从头到尾顺序流动一次二、InputStream / OutputStream2.1 概述InputStream / OutputStream 是字节流的抽象父类 2.2 输出方法原创 2021-02-18 16:04:29 · 268 阅读 · 1 评论 -
Java学习笔记(43)—— IO——File
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、File1.1 概述可封装一个磁盘路径字符串,路径具体包括:文件路径,如 d:/abc文件夹路径,如 d:/a.txt不存在的路径,如 k:/dsa/ewqFile 提供了对文件或文件夹的一些操作方法 创建对象 new File("d:/abc/a.txt") new File("d:/abc", "a.txt") ...原创 2021-02-05 15:47:08 · 123 阅读 · 0 评论 -
Java学习笔记(42)—— IO
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、IO1.1 概述IO指的是Input/Output,即输入/输出。原创 2021-02-03 15:32:11 · 99 阅读 · 0 评论 -
Java学习笔记(41)—— 异常
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、异常1.1 概述异常:封装错误信息的对象 错误信息: 类型 提示消息 行号 1.2 异常的继承结构Throwable |- Error 系统级错误 |- Exception 异常,可修复的错误 |- 其他Exception |- RuntimeExcep...原创 2021-02-02 17:22:45 · 352 阅读 · 0 评论 -
Java学习笔记(40)—— for-each循环
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、for-each循环1.1 概述for-each是数组遍历、集合迭代遍历的语法简化1.2 数组一般数组遍历方式(通过数组下标):for(int i=0;i<a.length;i++) { String s = a[i]; //处理s } for-each简化语法: for(String s : a){ ...原创 2021-02-02 15:39:02 · 172 阅读 · 0 评论 -
Java学习笔记(39)—— Iterator接口
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、Iterator接口1.1 概述迭代器父接口 需要注意的是:迭代遍历期间,不允许直接使用集合增删数据1.2 方法next() 把迭代器的指向移到下一个位置,同时,该方法返回下一个元素的引用。hasNext() 该方法会判断集合对象是否还有下一个元素,如果已经是最原创 2021-02-02 15:09:46 · 110 阅读 · 0 评论 -
Java学习笔记(38)—— Map接口(HashMap)
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、HashMap1.1 概述HashMap称之为哈希表,或散列表 HashMap存放“键值对”数据,例如:哈希表的作用:用键,快速定位数据,提取对应的值s = map.get(9527)键:不重复无序1.2 方法put(key, value)放入键值对数据放入重复的键,会用新值替换旧值get(key)提取指定键对应的值若键不存在,得到 null原创 2021-02-02 11:48:56 · 210 阅读 · 0 评论 -
Java学习笔记(37)—— List接口(ArrayList与LinkedList)
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、LinkedList1.1 概述双向列表,两端操作效率高1.2 方法add(数据) add(i, 数据) get(i) remove(i)移除指定位置数据,返回被移除的值remove(数据)找到第一个相等数据移除返回布尔值,表示是否找到数据并移除size()元素的数量iterator()辅助创建迭代器对象的方法。通过下标遍历双向链表,效率低;通过迭代原创 2021-02-02 11:40:35 · 230 阅读 · 0 评论 -
Java学习笔记(41)—— 编译期绑定与运行期绑定
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、编译期绑定和运行时绑定1.1 概述通常,我们所说的绑定,是指将一个方法调用同方法主体关联起来。在了解“编译期绑定”、“运行期绑定”前,我们还需要理解一个概念,即“编译时类型和运行时类型”。编译时类型和运行时类型Java的引用变量有两个类型,一个是编译时类型,一个是运行时类型。编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。如果编译时类型和运行时类型.原创 2021-02-02 10:19:57 · 685 阅读 · 0 评论 -
Java学习笔记(36)—— 集合
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、集合1.1 概述用来存放一组数据 继承结构 Collection 接口 |- List 接口 |- ArrayList |- LinkedList |- Set 接口 |- HashSet |- TreeSet Map 接口 |- HashMap |- TreeMap Iterator...原创 2021-02-02 09:56:53 · 95 阅读 · 1 评论 -
Java学习笔记(35)—— 内部类
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、内部类1.1 概述内部类:嵌套定义在类内部,或方法内部,或局部代码块内部的类 可分为:非静态内部类 静态内部类 局部内部类匿名内部类1.2 非静态内部类class A { class Inner { } }Inner对象,必须依赖于外部对象才能存在 不能独立创建对象 Inner 对象,属于一个 A 对象 非静态内...原创 2021-02-01 15:47:51 · 129 阅读 · 0 评论 -
Java学习笔记(34)—— 毫秒值表示的时间
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、毫秒值表示的时间1.1 示例package 利用Date求解毫秒值;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Scanner;/* * System.currentTimeMillis()系统的当前时间(1970-1-1) * java.util.Date() */原创 2021-02-01 11:27:42 · 630 阅读 · 0 评论 -
Java学习笔记(33)—— 接口
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、接口1.1 概述接口的作用:结构设计工具,用来解耦合、隔离实现 可以理解为,接口是极端的抽象类 用 interface 代替 class 用 implements 代替 extends1.2 接口中只能定义公开的常量 公开的抽象方法 公开的内部类、内部接口 1.3类可以实现多个接口一个类只能有一个父类,但可以实现多个接口class A implemen.原创 2021-02-01 10:55:05 · 131 阅读 · 0 评论 -
Java学习笔记(32)—— 访问控制符
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、访问控制符1.1 概述访问控制符用于控制一个类,或类中的成员的访问范围public:该类和非该类的均能访问protected:该类和该类的子类,同一个包内的成员也能访问[defalut]:同一个包内的类可以访问private:只有该类可以访问1.2 选择原则尽量使用小范围 public 是与其他开发者的一个契约,约定公开的东西会尽量保持稳定不变原创 2021-02-01 09:58:54 · 228 阅读 · 0 评论 -
Java学习笔记(31)—— 对象的创建过程
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、对象的创建过程1.1 概述class A { int v1 = 1; static int v2 = 2; static {...} A() {...} } class B extends A { int v3 = 3; static int v4 = 4; static {.....原创 2021-01-29 10:46:30 · 97 阅读 · 0 评论 -
Java学习笔记(30)—— static
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、静态1.1 概述我们需要了解,静态是对于“类”而言的。1.2 JVM内存方法区 加载的类文件 栈方法中的局部变量 堆新建的对象 对象中包含对象的成员变量...原创 2021-01-29 10:39:03 · 136 阅读 · 0 评论 -
Java学习笔记(29)—— final
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、final1.1 概述用来修饰常量、方法、类 1.2 常量final修饰的变量,值不可变,因此也称之为常量。final int a = 6; a = 7; //错 final Point a = new Point(3, 4); a.x = 30; a.y = 40; a = new Point(1,1);//错 a = null;//错 1.3 方法原创 2021-01-26 15:51:53 · 77 阅读 · 0 评论 -
Java学习笔记(28)——位运算
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、位运算1.1 位运算符00000000000000000000000011010011 00000000000000000000000001011001 & ---------------------------------- 00000000000000000000000001010001 00000000000000000000000011010011.原创 2021-01-26 15:36:00 · 198 阅读 · 0 评论 -
Java学习笔记(27)——BigDecimal、BigInteger
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、BigDecimal、BigInteger1.1 概述BigDecimal 做精确的浮点数运算 BigInteger 做超大的整数运算1.2 创建对象BigDecimal.valueOf(2.0) BigInteger.valueOf(2)1.3 BigDecimal方法add(BigDecimal bd),加法.原创 2021-01-26 10:58:31 · 216 阅读 · 0 评论 -
Java学习笔记(26)——自动装箱、自动拆箱
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、自动装箱1.1 概述基本类型值,自动封装成包装类型 Integer a = 6; 编译器编译成: Integer a = Integer.valueOf(6);二、自动拆箱1.1 概述自动取出包装对象中封装的值 int i = a; 编译器编译成: int i = a.intValue(); 示例:a = a + 1; 编译器编译成: a = I原创 2021-01-26 10:40:00 · 73 阅读 · 0 评论 -
Java学习笔记(25)——基本类型的包装类
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、基本类型的包装类1.1 概述用来封装一个基本类型值 有时需要把基本类型值,当做引用类型来使用1.2 Number类数字包装类的抽象父类 子类 Byte,Short,Integer,Long Float,Double BigDecimal,BigInteger取值方法 byteValue() shortValue() intValue(原创 2021-01-26 10:35:16 · 125 阅读 · 0 评论 -
Java学习笔记(24)——正则表达式
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、正则表达式1.1 概述Regular Expression 规则表达式 正确的字符串格式规则2019/3/12 一般用来判断用户输入的字符串,是否符合格式要求 无需记忆,可自行某搜索引擎检索“正则表达式大全” 1.2 常见用法字符串的正则表达式匹配运算方法 matches(正则) 当前字符串,是否能与指定的正则表达式相匹配 split(正则) "abc,de原创 2021-01-18 23:05:51 · 276 阅读 · 0 评论 -
Java学习笔记(23)——String
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、String1.1 概述封装 char[] 数组1.2 创建对象char[] a = {'a','b','c','d'}; String s = new String(a); 第一种语法的简化格式: String s = "abcd"; 1.3 字符串字面值第一次用到一个字面值时,在“字符串常量池”中新建对象。 再次用到相同字面值时,直接访问“常量池”中已经存原创 2021-01-18 09:27:25 · 143 阅读 · 0 评论 -
Java学习笔记(22)——Object
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、Object1.1 概述顶层父类 一个类,如果不继承其他类,默认继承 Object class A /*extends Object*/ {} 1.2 方法toString() ,获得一个对象的字符串表示。Object 的默认实现是: "day0903.Point@a9c104" "类型@地址" ,如果需要,可以在子类中重写这个方法。equals(Objec原创 2021-01-15 16:36:41 · 126 阅读 · 0 评论 -
Java学习笔记(20)——抽象类
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、抽象类1.1 概述可以理解为“半成品类”,没有完成的类。抽象类不能创建对象。1.2 抽象方法只有方法的定义,没有方法的实现代码。public abstract void f(); 作用: 作为通用方法,在父类中定义。要求子类必须完成这个方法。1.3 练习:猜字母游戏 and 猜数字游戏已经随机产生了5个不重复的大写字母。请猜这5个字母(KSNUR)。其中,A原创 2021-01-15 10:57:24 · 147 阅读 · 0 评论 -
Java学习笔记(19)——多态
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、多态1.1 概述作用:一致的类型 所有子类型对象,都可以被当做一致的父类型来处理 1.2 类型转换向上转型 子类型对象,转型成父类型 向上转型会隐藏子类的特有成员,只能调用父类定义的通用成员向下转型 已经转成父类型的子类对象,再转回成子类型 某种子类型对象,需要特殊处理(调用它的特有成员),先转回来再处理多态转型本质是引用变量的类型转换,对象本身不变 .原创 2021-01-15 10:06:41 · 120 阅读 · 0 评论 -
Java学习笔记(18)——继承
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、继承1.1 概述作用:代码重用、复用 单继承 一个子类,只能继承一个父类 一个父类,可以有多个子类 不继承: 构造方法 私有(private)成员 1.2 子类对象 先新建父类对象 再新建子类对象 两个对象绑定,整体作为一个对象调用成员 先找子类 再找父类1.3 方法重写 Override 子类中,重新定义、重新编写从父类继承的方法原创 2021-01-14 17:34:16 · 180 阅读 · 0 评论 -
Java学习笔记(17)——二进制
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、二进制2.1 概述计算机表示任何数据,都是二进制数字 电容高电位,1 电容低电位,0 一个电位,称为 bit(比特) 一个字节,8个电位 2.1 Java的byte类型在前面我们说过,byte是1个字节,即8位,其取值范围是-128-127(第一位是符号位)。那么这个取值范围是怎么来的呢,现在看一下下面的内容: 二进制 十进制...原创 2021-01-14 16:11:47 · 216 阅读 · 0 评论 -
Java学习笔记(16)——构造方法、this、方法重载
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、构造方法1.1 概述构造方法是新建对象时执行的一个特殊方法 new Soldier() new AK47() new Score() 构造一个对象之后,立即执行的一个方法 一个类,必须有构造方法 如果自己不定义,编译器会添加默认构造方法class A { public A() { } } 构造方法重载 多个不同参数的构造方法...原创 2021-01-07 17:04:40 · 184 阅读 · 0 评论 -
Java学习笔记(15)——类、对象与引用
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、类1.1 概述对事物、算法、逻辑、概念等的抽象 可理解成“模板”、“图纸” 封装 相关的数据、运算代码,封装成一个“类”组件二、对象1.1 概述从“类”创建的具体“实例” 每个对象,占用独立的内存空间,保存各自的属性数据 可以独立控制一个对象,来执行指定的方法代码三、引用1.1 概述保存对象的内存地址 理解成“遥控器”原创 2021-01-07 16:11:02 · 294 阅读 · 0 评论 -
Java学习笔记(14)——面向对象
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、面向对象1.1 概述人为抽象的一种编程模型 面向过程 和 面向对象 面向过程,代码集中,难以维护 1.2 内容Java面向对象的内容较多,在此也只是概要的罗列一下内容项,在后续的博文中会逐个展开。类 对象 引用 构造方法 this 方法重载 继承 super 多态 instanceof 抽象类 f.原创 2021-01-07 15:40:43 · 82 阅读 · 0 评论 -
Java学习笔记(12)——方法的递归
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、方法的递归1.1 概述在方法中,调用自身 void f() { f(); } 用f()方法求阶乘 f(5) f(4) f(3) f(5) 5*f(4) 4*f(3) 3*f(2) 2*f(1) ...原创 2021-01-07 15:30:32 · 127 阅读 · 0 评论 -
Java学习笔记(11)——变量
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、变量1.1 概述1.1.1 局部变量定义在方法、局部代码块中 必须手动初始化(第一次赋值时,分配内存) int a; //不会初始化 print(a);//错,内存中不存在 a = 6; //初始化 print(a); 局部变量作用域,在它定义的大括号内有效 在作用域内,不能重复定义 void a() { int i=6; if(...原创 2021-01-07 11:41:34 · 66 阅读 · 0 评论 -
Java学习笔记(10)——数组
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、数组1.1 概述用来存放一组数据的数据结构数组创建(3种语法):1. int[] a = new int[5]; 新建5个长度的 int[] 数组 5个位置,存默认值 0 把数组的地址,存到变量a 2. int[] a = {5,2,6,7,1,2,3}; 3.为存在的数组变量,重新赋一个新的数组,并且,直接初始化数组数据 a = new in...原创 2021-01-06 10:36:08 · 234 阅读 · 0 评论 -
Java学习笔记(9)——方法的返回值
这里将自己学习java及其应用的一些笔记、积累分享一下,如果涉及到了文章、文字侵权,请联系我删除或调整。一、方法的返回值1.1 概述一个方法,可以有计算结果 在调用位置,可以获得方法的计算结果返回值 void n 空,没有返回值 有返回值,需要定义返回值的数据类型 int f() { } String f() { } 如果定义了返回类型,必须返回值 int f() { int x = 1; if(x == 1) { return 6...原创 2021-01-05 17:43:36 · 511 阅读 · 4 评论