JavaSE

JavaSE--IO流

一、IO流 1、IO流概述 通过IO可以完成对硬盘文件的读和写 从硬盘中读取文件,读到内存中:读(Read)、输入(Input)、输入流(InputStream) 从内存中写入文件,写到硬盘中:写(Write)、输出(Output)、输出流(OutputStream) java.io.*; 2、IO ......
JavaSE IO

JavaSE--foreach

一、增强for(foreach) 1、语法格式 for(元素类型 变量名 :数组或集合){ System.out.println(变量名); } 2、foreach缺点 foreach有一个缺点:没有下标。在需要使用下标的循环中,不建议使用增强for循环 3、举例 public class ForE ......
foreach JavaSE

JavaSE--泛型

一、泛型 1、泛型语法机制 泛型这种语法机制,只在程序编译阶段起作用,只是给编译器参考的。(运行阶段泛型没用!) 2、泛型的好处 第一:集合中存储的元素类型统一了。 第二:从集合中取出的元素类型是泛型指定的类型,不需要进行大量的“向下转型” 3、泛型的缺点 导致集合中存储的元素缺乏多样性。大多数业务 ......
JavaSE

JavaSE--集合

一、集合概述 java.util.*;包下 1、什么是集合 集合实际上就就是一个容器,可以来容纳其他类型的数据,例如数组就是一个容器,一个集合 集合在开发中使用较多,可以一次容纳多个对象, 注意:集合不能直接存储基本数据类型,另外集合也不能直接存储java对象,集合当中存储的都是java对象的内存地 ......
JavaSE

JavaSE--异常处理机制

一、异常exception 1、什么是异常,以及Java提供的异常处理机制 程序执行过程中发生了不正常的情况,而这种不正常的情况叫做:异常 java语言提供了异常的处理方式,如果程序执行过程中出现了不正常情况, java把该异常信息打印输出到控制台,供程序员参考。程序员看到异常信息之后,可以对程序进 ......
机制 JavaSE

JavaSE--Random类

java.util.Random public class RandomTest01 { public static void main(String[] args) { // 创建随机数对象 Random random = new Random(); // 随机产生一个int类型取值范围内的数字。 ......
JavaSE Random

JavaSE--枚举enum

一、枚举类型 1、什么使用使用枚举 在开发中,有可能遇到一个方法的执行结果可能包括三种情况,四种情况,五种情况不等, 但是每一个都是可以数清楚的,一枚一枚都是可以列举出来的。 2、枚举的定义 enum 枚举类型名{ 枚举值1,枚举值2,枚举值3...... } 3、 枚举是一种引用数据类型 枚举编译 ......
JavaSE enum

JavaSE--日期类

java.util.Date 一、构造方法new Date() 1、获取系统当前时间(精确到毫秒) // 直接调用无参构造 Date nowTime = new Date(); // java.util.Date类的toString()方法已经被重写了 //System.out.println(no ......
日期 JavaSE

JavaSE--数字类

一、数字格式化 1、数字格式 # 代表任意数字 , 代表千分位 . 代表小数点 0 代表不够时补0 例如 #,###.0000 表示加一个千分位,四位小数,不够补零 2、数字格式化 // 表示加入千分位,保留两位小数 DecimalFormat df = new DecimalFormat("### ......
数字 JavaSE

JavaSE--StringBuffer类与StringBuilder类

开发中需要大量字符串的拼接操作,建议使用jdk中自带的StringBuffer与StringBuilder类 1、StringBuffer 优化StringBuffer的性能 在创建StringBuffer的时候尽可能给定一个合适的初始化容量 最好减少底层数组的扩容次数。预估计一下,给一个大一些初始 ......
StringBuilder StringBuffer JavaSE

JavaSE--基本数据类型的包装类

一、八种包装类 1、为什么需要基本数据类型的包装类 有以下需求:方法参数为Object obj,但是有需要传进去一个数字或者字符, public class IntegerTest01 { public static void main(String[] args) { // 有没有这种需求:调用d ......
类型 数据 JavaSE

JavaSE--String类

一、String内存图 // jvm内存图 String s1 = "abcde"; String s2 = "abcde" + "zz"; String s3 = new String("yy"); 垃圾回收器不会释放常量 二、比较字符串最好使用String类中重写的equal方法 String ......
JavaSE String

JavaSE--数组以及Arrays工具类

一、数组 1、数组概述 数组是一种引用数据类型,数组的父类是Object 数组因为是引用类型,所以在堆内存中存放 2、数组的分类: 一维数组、二维数组、三维数组、多维数组...(一维数组较常用) 3、数组的长度 a)数组一旦创建,java中规定,长度不可变 b)获取数组长度:所有数组对象都有leng ......
数组 工具 JavaSE Arrays

javaSE--匿名内部类

一、内部类 1、内部类 在类的内部又定义一个新的类,被称为内部类 2、内部类的分类 静态内部类:类似于静态变量 实例内部类:类似于实例变量 局部内部类:类似于局部变量(匿名内部类属于局部内部类一种) 3、使用内部类编写的代码,可读性较差,能不用尽量不用 class Test01{ // 静态变量 s ......
javaSE

JavaSE--包package和import以及访问控制权限

一、package 1、package是什么 package是java中的包机制,包机制的作用是为了方便程序的管理 不同功能的类分别存放在不同的包下(按照功能划分的,不同的软件包具有不同的功能) 2、package使用方法 package是一个关键字,后面加包名 注意:package语句只允许出现在 ......
权限 package JavaSE import

JavaSE--Object类中一些方法:toString、equal、finalize、hashCode

1、toString方法 // 源码 public String toString() { return this.getClass().getName() + "@" + Integer.toHexString(hashCode()); } toString方法一般都是要重写的,是要越简洁越好,可 ......
toString finalize hashCode 方法 JavaSE

JavaSE--类和类之间的关系

一、is a Cat is a Animal(猫是一个动物) 凡是能满足is a的表示“继承关系” A extends B 二、has a I has a Pen (我有一支笔) 凡是能够满足has a关系的表示“关联关系” 关联关系通常以“属性”的形式存在 A{ B b; } 三、like a C ......
之间 JavaSE

JavaSE--接口在开发中的作用

一、举个例子 // 接口:菜单 public interface FoodMenu{ // 西红柿炒鸡蛋 void scd(); // 炒鸡蛋 void yxrs(); } // 中餐厨师 public class ChinaCooker implements FoodMenu{ public vo ......
接口 作用 JavaSE

JavaSE--抽象类和接口

一、抽象类 1、抽象类 1)抽象类无法实例化,无法创建对象 2)抽象类:是类和类之间的共同特征,将这些具有共同特征的类再进一步抽象形成了抽象类,由于类本身是不存在的,所以抽象类无法创建对象,抽象类与抽象类之间也还有共同特征,还可以再一步抽象 3)抽象类是无法实例化的,无法创建对象的,所以抽象类是用来 ......
接口 JavaSE

JavaSE--final关键字

一、final关键字 1、final概述 final是一个关键字,可以修饰变量、方法还有类等 final表示最终的,不可变的 2、final修饰的类 final修饰的类无法继承 final class A{ } // B类继承A类相当于给A类进行功能扩展, // 如果不希望别人进行扩展,进行继承,可 ......
关键字 关键 JavaSE final

JavaSE基础知识

# 1. JavaSE基础知识 ## 1. 数据类型 ### 1.1. 基本类型 1子节 = 8 位 1 byte = 8 bit 1. 整数型 | 类型 | 占用字节 | 范围 | | | | | | byte | 1 | -128(-2^7) ~ 127(2^7-1) | | short | 2 ......
基础知识 基础 知识 JavaSE

JavaSE基础

# 一、Java背景 > 目标 - JDK、JRE、JVM - 跨平台原理 ## (一)JDK、JRE、JVM JDK ( Java Development Kit):是 Java 开发工具包,是整个 Java 的核心,包括了 Java 运行环境 JRE、Java 工具和 Java 基础类库。 简化 ......
基础 JavaSE

JavaSE进阶

# 一、day01 > 目标 继承、super、方法重写、package、import、权限修饰符、final、static > 思想 ## (一)继承 相同属性 + 相同方法 = 相同特征 1. **概述** 继承是面向对象三大特征之一。可以使得子类具有父类的属性和方法,还可以在子类中重新定义,追 ......
JavaSE

JavaSE概览

# 一、JavaSE 基础 ## day01 ```markdown # day01 1. Java语言发展史 2. Java语言跨平台原理 3. JRE和JDK 4. 常用DOS命令 5. HelloWorld案例 6. 注释 7. 关键字 8. 常量 9. 数据类型 10. 变量 11. 变量使 ......
概览 JavaSE

JavaSE--super关键字

一、super关键字 1、super 是一个关键字,全部小写 2、this与super对比 this: this可以出现在实例方法中和构造方法中 语法:this.或者this() this不能使用在静态方法中 this.大部分可以省略,在区分局部变量和实例变量的时候不能省略, this()调用本类中 ......
关键字 关键 JavaSE super

JavaSE--多态在开发中的作用

一、多态在开发中的作用 1、降低程序的耦合度,提高程序的扩展力 public class Master(){ public void feed(Dog d){} public void feed(Dog d){} } 以上代码中:Master和Dog、Cat关系紧密,耦合度高,导致扩展力很差 pub ......
作用 JavaSE

JavaSE--方法覆盖和多态

一、方法覆盖Override 1、什么时候使用Override 例如:以下代码:鸟儿在执行move方法时,最好输出“鸟儿在飞翔”,但是当前程序在执行move方法时,输出“动物在移动”,显然Bird子类继承来的方法无法满足需求 子类继承父类之后,当继承过来的方法无法满足当前子类的业务需求时,子类有权利 ......
方法 JavaSE

JavaSE--继承

一、继承extends 1、继承的作用 基本作用:子类继承父类,代码可以得到复用 主要作用:因为有了继承关系,才有了后期的方法覆盖和多态机制 2、继承的语法结构 class 类名 extends 父类名{ 类体; } // 使用继承机制来解决代码复用问题。 // 继承也是存在缺点的:耦合度高,父类修 ......
JavaSE

JavaSE--封装

一、封装概念及作用 1、封装 现实生活中很多都是封装的,例如手机、笔记本电脑......外部有一个壳子保护内部的部件,保证内部的部件是安全的 封装之后对于我们使用者来说不需要了解内部的结构和关心内部的复杂,只需要使用就可以 2、封装的作用 保证内部结构的安全 屏蔽复杂,暴露简单 二、怎么封装 不在对 ......
JavaSE

JavaSE--this和static

一、static关键字 1、static static翻译为“静态的” 所有static关键字修饰的都是类相关的,类级别的 所有static修饰的,都通过“类名.”的方式访问 static修饰的变量:静态变量 static修饰的方法:静态方法 成员变量分为:实例变量、静态变量 class VarTe ......
JavaSE static this