JavaSE进阶
日天家的猫
这个作者很懒,什么都没留下…
展开
-
JavaSE进阶 第十六章 总结
文章目录知识点传送门知识点传送门上一章:下一章:原创 2020-08-21 17:05:44 · 153 阅读 · 0 评论 -
JavaSE进阶 第十五章 注解
文章目录1.注意点2.JDK内置注解2.1Deprecated2.2Override2.3SuppressWarnings3.元注解3.1Target3.2Retention4.定义注解中属性5.反射机制获取注解5.1获取类的注解5.2获取方法的注解6.注解在开发中的作用传送门1.注意点注解Annotation是一种引用数据类型,编译之后生成xxx.class文件定义注解语法格式:[修饰符列表] @interface 注释类型名{}默认情况下,注解可以出现在任意位置上,使用注解的语法格式:@原创 2020-08-16 15:16:57 · 219 阅读 · 0 评论 -
JavaSE进阶 第十四章 反射机制
文章目录1.注意点2.获取class的三种方式2.1Class.forName()2.2对象.getClass()2.3任何类型.class3.通过反射实例化对象4.路径问题类加载器传送门1.注意点反射机制的作用:操作字节码文件(class文件)反射机制的相关类在java.lang.reflect.*下反射机制相关的重要类(1)java.lang.Class:代表整个字节码,代表一个类型(2)java.lang.reflect.Method:代表字节码中的方法字节码(3)java.lang.原创 2020-08-15 23:29:53 · 395 阅读 · 0 评论 -
JavaSE进阶 第十三章 多线程
文章目录1.进程和线程2.实现线程2.1继承Thread类2.1实现Runnable接口2.2匿名内部类3.线程的生命周期4.线程的方法传送门1.进程和线程进程是一个应用程序,一个进程可以启动多个线程线程是一个进程中的执行单元/执行场景JVM是一个进程,在java程序中至少有两个线程并发,一个主线程调用main方法,一个垃圾回收线程进程间的内存不共享,线程间堆内存和方法区内存共享,但是栈内存独立,一个线程一个栈(多线程并发)Java的多线程机制,目的是为了提高程序的处理效率单核CPU无法实现原创 2020-08-14 22:33:28 · 283 阅读 · 0 评论 -
JavaSE进阶 第十二章 IO流
文章目录1.IO流概述2.文件流2.1FileInputStream流2.1.1创建流、read和close方法2.1.2avaiable方法2.1.3skip方法2.2FileOutputStream流2.3FileReader流2.4FileWriter流2.5文件复制3.缓冲流与转换流3.1BufferedReader与InputStreamReader3.2BufferedWriter与InputStreamWriter3.3BufferedInputStream与BufferedOutputStr原创 2020-08-13 00:25:24 · 377 阅读 · 0 评论 -
JavaSE进阶 第十一章 集合
目录1.集合概述1.1基本概念1.2集合的继承结构图1.2.1Collection集合继承关系1.2.2Map集合继承关系1.3常用集合存储元素的特点1.4总结常用的实现类2.Collection和Iterator3.List接口4.Set接口5.Map接口6.Collections工具类7.泛型初步8.遗留类对比表传送门1.集合概述1.1基本概念集合实际上是一个容器,可以容纳其他类型的数据集合不能存储基本数据数据类型,也不能直接存储java对象,存储的都是java对象的内存地址(引用)list.原创 2020-08-11 00:45:12 · 343 阅读 · 0 评论 -
JavaSE进阶 第十章 增强for循环
目录1.foreach循环的定义2.foreach循环的使用传送门1.foreach循环的定义建议结合第十一章集合进行阅读for(元素类型 变量名 : 数组或集合){ System.out.println(变量名);}2.foreach循环的使用int[] arr = {1,2,3,4,5};for(int[] date:arr){ System.out.println(date);}List<String> strList = new ArryList<>原创 2020-08-10 23:11:54 · 219 阅读 · 0 评论 -
JavaSE进阶 第九章 泛型
目录1.注意点2.泛型的使用3.自动类型推断机制4.自定义泛型传送门1.注意点结合第十一章集合的内容阅读JDK5.0后推出了泛型,泛型只在编译阶段起作用,给编译器参考使用泛型的好处:集合中存储的元素类型统一了;从集合中取出的元素类型是泛型指定的类型,不需要大量的向下转型适用泛型的缺点:导致集合中的元素缺乏多样性,但是的多数业务中,集合中元素的类型还是统一的2.泛型的使用public class Animal{ public void move(){ System,out.printl原创 2020-08-10 22:47:05 · 176 阅读 · 0 评论 -
JavaSE进阶 第八章 异常处理
目录1.异常的基本概念2.异常的分类2.1异常的层次结构2.2异常的分类2.2.1编译时异常2.2.2运行时异常2.2.3异常的处理方法2.3try、catch和finally2.3.1深入try...catch2.3.2 finally关键字2.3.2.1 finally的使用2.3.2.2 finally面试题2.4getMessage和printStackTrace2.4.1getMEssage()2.4.2printStackTrace()3.如何自定义异常4.异常在实际开发中的作用5.方法覆盖与异原创 2020-08-09 20:37:40 · 343 阅读 · 0 评论 -
JavaSE进阶 第七章 常用类 (七) 枚举类型
目录1.枚举类型的定义2.示例传送门1.枚举类型的定义枚举是一种引用数据类型,编译生成后为.class文件,枚举的每一个值可以看做常量结果为两种建议使用布尔类型,超过两种并且可以列举的建议使用枚举类型enum{ 枚举值1,枚举值2,枚举值3}2.示例高版本JDK,switch语句支持int、String、枚举…public enum Color{ RED,BLUE,YELLOW,BLACK}public class EnumTest{ public static void ma原创 2020-08-09 11:25:28 · 183 阅读 · 1 评论 -
JavaSE进阶 第七章 常用类 (六) 随机数
第七章 常用类 (六) 随机数目录第七章 常用类 (六) 随机数1.生成随机数2.示例1.生成随机数Random random = new Random();int num1 = random.nextInt();//随机生成一个inr类型取值范围内的数字int num2 = random.nextInt(101);//生成[0,100]之间的随机数2.示例生成5个[0,100]范围内不同的整数存放在数组中public class RandomTest{ public static原创 2020-08-08 23:23:53 · 165 阅读 · 0 评论 -
JavaSE进阶 第七章 常用类 (五) 数字类
第七章 常用类 (五) 数字类目录第七章 常用类 (五) 数字类1.数字格式2.BigDecimal1.数字格式java.text.DecimalFormat专门扶着数字格式化的DecimalFormat df = new DecimalFormat(“数字格式”)数字格式:#代表任意数字,代表千分位. 代表小数点0 代表不够时补0DecimalFormat df = new DecimalFormat("###,###.##");String s = df.format(12原创 2020-08-08 22:51:54 · 154 阅读 · 0 评论 -
JavaSE进阶 第七章 常用类 (四) 时间类
第七章 常用类 (四) 时间类目录第七章 常用类 (四) 时间类1.获取系统当前时间2.日期格式化2.1Date -->String2.2 String -->Date3.获取时间差3.1获取1970年1月1日 8时到系统当前时间的总毫秒数3.2统计一个方法耗时3.3指定时间4.System类的相关属性和方法1.获取系统当前时间Date nowTime = new Date();2.日期格式化2.1Date -->StringSimpleDateFormat是java.tex原创 2020-08-08 18:29:58 · 188 阅读 · 0 评论 -
JavaSE进阶 第七章 常用类 (三) 基本数据类型对应的8个包装类
第七章 常用类 (三) 基本数据类型对应的8个包装类目录第七章 常用类 (三) 基本数据类型对应的8个包装类1. 基本数据类型对应的8个包装类2.Number类3.Integer类3.1Integer类的构造方法3.2Integer类的自动装箱与自动拆箱3.3Integer类最值常量3.4JVM内存图3.5Integer类中常用方法4.String、int、Integer之间相互转换1. 基本数据类型对应的8个包装类因为8种基本数据类型不够用,所以SUN提供了对应的8种包装类型,都属于用用数据类型原创 2020-08-08 17:08:59 · 240 阅读 · 0 评论 -
JavaSE进阶 第七章 常用类 (二) StringBuffer与StringBuilder
第七章 常用类 (二) StringBuffer与StringBuilder目录第七章 常用类 (二) StringBuffer与StringBuilder1.StringBuffer的定义与使用2.StringBuffer与StringBuilder的区别3.试题3.1String不可变得原因3.2StringBuffer与StringBuilder可变的原因1.StringBuffer的定义与使用由于java中字符串是不可变的,需要对字符串频繁拼接是会产生新字符串,占用大量的方法区内存可以使用j原创 2020-08-08 16:09:01 · 212 阅读 · 0 评论 -
JavaSE进阶 第七章 常用类 (一) String
第七章 常用类 (一) String目录第七章 常用类 (一) String1.注意点2.String类的构造方法3.String类的常用方法1.注意点java中用双引号括起来的都是String对象,且字符串是不可变的java中用双引号括起来的字符串都是存储在“方法区”的“字符串常量池”中。字符串在实际开发中使用频繁,所以放在其中String s = “abc”; s引用中保存了字符串对象在字符串常量池中的内存地址String类已经重写了toSting和equals方法String s1原创 2020-08-08 10:53:36 · 217 阅读 · 0 评论 -
JavaSE进阶 第六章 数组
第六章 数组目录第六章 数组1.注意点2.main方法(String[] args)的使用3.数组扩容与拷贝4.数组的常见算法4.1排序算法4.1.1冒泡排序算法4.1.2选择排序算法4.2二分法查找5.Arrays工具类1.注意点java语言中的数组为应用数据类型,存储在堆内存中数组中如果存储为java对象的话,实际上存储的是对象的引用(内存地址)一旦创建,长度不可变数组中元素类型统一,可以为引用数据类型和基本数据类型数组中的元素内存地址连续,数组中首个元素的内存地址为整个数组对象朗的内存原创 2020-08-07 22:27:15 · 447 阅读 · 0 评论 -
JavaS进阶 第五章 内部类
第五章 内部类目录第五章 内部类1.内部类的定义与分类2.匿名内部类1.内部类的定义与分类内部类:在类的内部定义的一个新的类内部类的分类:静态内部类:类似于静态变量实例内部类:类似于实例变量局部内部类:类似于局部变量2.匿名内部类匿名内部类为局部内部类的一种,因为没有名字而得名。学习匿名内部类主要是为了方便阅读别人的代码匿名内部类的缺点:复杂、乱、可读性查...原创 2020-08-07 21:22:06 · 144 阅读 · 0 评论 -
JavaSE进阶 第四章 Object类
第四章 Object类目录第四章 Object类1.如何查找Object类中的方法2.toString()3.equals()4.finalize()5.hashCode()6.colon()1.如何查找Object类中的方法查找源代码各版本JDK提供的API帮助文档2.toString()源代码中toStrin()方法提供的默认实现:类名@对象的内存地址装换为十六进制的形式所有类的toString()方法是需要重写的,重写规则:简洁明了注意点:System.out.println(原创 2020-08-07 00:04:30 · 167 阅读 · 0 评论 -
JavaSE进阶 第三章 包、import和访问权限
第三章 package、import和访问权限目录第三章 package、import和访问权限1.packege1.1packege机制的作用1.2packege的使用1.3java程序的编译与运行2.import3.访问控制权限1.packege1.1packege机制的作用不同功能的类分别存放在不同的包下,方便程序的管理1.2packege的使用package语句只允许出现在java源代码的第一行一般采用公司域名倒序的方式:公司域名倒序 + 项目名 + 模块名 + 功能名packag原创 2020-08-06 20:25:21 · 202 阅读 · 0 评论 -
JavaSE进阶 第二章 抽象类及接口
第二章 抽象类及接口目录第二章 抽象类及接口1.抽象类1.1抽象类总结1.2抽象方法1.3抽象编程2.接口2.1接口的基础语法2.2接口在开发中的作用3.类与类之间的关系4.抽象类与接口的区别5.示例1.抽象类1.1抽象类总结抽象类的定义[修饰符列表] abstract class 类名{ 类体;}抽象类是无法被实例化的(创建对象),抽象类是引用数据类型,用来被子类继承的抽象类虽然无法实例化,但是有构造方法,这个构造方法是供子类使用的final修饰的类是无法被继承的,与abstr原创 2020-08-06 18:01:53 · 197 阅读 · 0 评论 -
JavaSE进阶 第零章 IDEA
第零章 IDEA目录第零章 IDEA快捷键快捷键删除一行ctrl+y复制一行ctrl+d运行代码左侧小箭头\ctrl+shift+F10左侧列表的展开关闭上下左右键新建文件、构造方法alt+Ins关闭窗口Esc窗口全屏ctrl+shift+F12切换窗口alt+←/→打开列表alt+1打开console窗口alt+4查看可填写的参数ctrl+p定位属性、变量、方法悬停单词上,按ctrl,点击跳转原创 2020-08-05 23:45:02 · 161 阅读 · 0 评论 -
JavaSE进阶 第一章 final关键字
第一章 final关键字目录第一章 final关键字1.总结2.JVM内存图3.常量4.fianl修饰的实例变量初始化1.总结final修饰的类无法继承final修饰的方法无法覆盖final修饰的变量只能赋值一次final修饰的引用一旦指向某个对象,则不能重新指向其他对象,但该引用指向的对象内部的数据可以修改。该对象不会回收直到方法结束final修饰的实例变量必须手动初始化,不能采用系统默认值final修饰的实例变量一般和static联合使用,称为常量2.JVM内存图final修饰引原创 2020-08-05 23:26:28 · 254 阅读 · 0 评论