10 2023 档案
摘要:因为数组的局限性,Java提供了集合充当容器去存储、处理若干的其他对象。 相较于数组,集合它: 性能更高 易拓展和易修改 更多的集合类型处理更多的数据问题 .... Collection Collection,它是除Map外,所有其他集合类的根接口。 开发中很少直接使用Collection接口进行开
阅读全文
摘要:把一个对象转换为二进制流就是对象的序列化。(对象👉二进制流) 二进制流转换为一个对象就是对象的反序列化。(二进制流👉对象) 二进制流也就是byte[]数组 如果一个类的对象想要被序列化,则这个类必须要实现java.io.Serializable接口。 该接口定义如下: public interf
阅读全文
摘要:IO流还提供了一组转换流 主要包括转换输出流(OutputStreamWriter)和(转换输入流InputStreamReader)。 OutputStreamWriter 转换输出流是Writer的子类,作用是将字节输出流转换为字符输出流。(字节👉字符) OutputStreamWriter构
阅读全文
摘要:System类的常量 常量 描述 public final static InputStream in 系统标准输入,一般是键盘 public final static PrintStream out 系统标准输出,一般是显示器 public final static PrintStream err
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 在整个IO包中,打印流是输出信息最方便的类。 主要包括字节打印流(PrintStream)和字符打印流(PrintWriter) 打印流没有输入流,所以没有输入输出这个说法,都是输出 PrintStream 字节打印流属于OutputStre
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 文件在硬盘或传输时都以字节的形式进行传输。包括图片、视频等。 思路: 先定位源文件 file1作为源文件,file2作为复制文件 使用字节流输入流读取file1 使用字节流输出流输出file2 关闭流。 定位源文件,我特地翻出来一张学校对面理
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 字符流 字符流是专门针对字符的IO。在字符流中: 输出流主要使用Writer类,输入流主要使用Reader类 字符输出流 Writer类定义如下: public abstract class Writer implements Appenda
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 在JavaIO中,流的操作主要有字节流和字符流两大类。 两类都有输入和输出操作。 字节流 字节流主要操作Byte(字节)数据类型。在字节流中: 输出流主要使用OutputStream类,输入流主要使用InputStream类。 OutputS
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 Java中提供了IO包以操控计算机中的文件 File类 在整个IO包中,与文件相关的类就是File类。使用它可以进行创建或删除文件 因为File类是个普通类,初始化它需要调用其有参构造 public File(String pathname)
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 现有如下栗子: public class Test10 { public static void main(String[] args) { Gen<String> gen = new Gen<>(); tell(gen); } public
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 如果一个类中,不想限定一个属性的数据类型,或某个方法的返回值和传参。 可以在类声明时通过一个标识来表示。 这样只需要在实例化类的时候声明具体的数据类型即可,这就是泛型 也可以理解为广泛的数据类型,即不限制的数据类型 泛型类 泛型作用于类上就是
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 当多个线程同时读取某一变量时候,容易出现和预期不符的结果 public class Test9 { static int i = 0; public static void main(String[] args) { Thread m1 =
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 任何线程一般具有5种状态。(非生命周期) 创建状态:新建了一个线程对象,但还处于不可运行状态。 就绪状态:新建线程后,调用该线程start()方法就可以启动线程。此时线程进入线程队列排队,并等待CPU分配资源。当线程启动时,进入该状态。 运行
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 进程与线程 多线程是实现并发机制的一种有效手段,进程和线程一样都属于并发的一个单位。(线程比进程更小)。 所谓多线程是指一个进程在执行过程中可以产生多个线程。这些线程可能同时存在、同时运行。 一个进程可以包含一个或多个线程,但至少会有一个线程
阅读全文
摘要:补档,访问修饰符。 范围 private 默认的 protected public 同一包 √ √ √ √ 同一包中的类 √ √ √ 不同包的子类 √ √ 其他包 √ 命名规范 类:所有单词首字母大写。 方法:第一个单词首字母小写,之后每个单词首字母大写。(驼峰命名法) 属性:驼峰 包:所有单词字母
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 断言就是断定一个布尔表达式的结果。 assert 布尔表达式; assert 布尔表达式:想要附带的信息 断言一般是调试使用 public static void main(String[] args) { int x = 10 / 2; a
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 throws 在定义一个方法时可以使用throws抛出异常。 表示此方法不处理异常,转而交给方法的调用处进行处理。 public class Test7 { public static void main(String[] args) { M
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 在程序实际运行过程中,可能存在大量的未知问题,所以在程序中对错误的处理是极其重要的。 Java提供的异常处理机制可以更好地解决这方面的问题。 认识异常 public static void main(String[] args) { Syst
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 基本数据类型怎么变化引用数据类型(对象) Java为每种基本类型都提供了对应的包装类型: 基本数据类型 包装类 int Integer char Character short Short long Long float Float doub
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 匿名内部类 匿名对象没忘吧? new Person();//语法同匿名内部类 匿名内部类就是匿名的局部内部类,地位同局部变量。 有两种形式:基于接口的匿名内部类,基于类的匿名内部类 基于接口的匿名内部类 常规方式实现接口需实现类实现接口并重写
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 内部类 在类中可以定义成员变量和方法,而且还可以定义一个类。 一般内部类分为四种: 成员内部类、局部内部类、静态内部类、匿名内部类。 成员内部类 成员内部类就好像成员变量一样,定义在类的内部。 class Out { private int
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 在Java中主要存在4块内存区域。 栈内存空间:保存所有变量(更准确的说是保存了指向堆内存空间的地址) 堆内存空间:保存每个对象的具体属性内容 全局数据区:保存static类型的属性 全局代码区:保存所有方法定义 static关键字 一个类实
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 如果父类的方法本身不需要实现,仅仅是为了定义方法。 class Candy { public void sell(); } //无法通过编译 目的只是让子类去重写它,那么,可以把父类的方法声明为抽象(abstract)方法 若某类中拥有一个或
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 //根据面向对象3中提及的属性看对象,方法看指向。试想如下代码 public class Test4 { public static void main(String[] args) { Base base = new Sub(); Syst
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 多态性 面向对象最后一条也是最重要的特性。 多态性主要体现在两方面: 方法的重载与重写 对象的多态性 方法的重写 在Java拾贝第二天方法中提到了方法的重载。 现在基于继承Java提供了方法的重写。 即子类重写父类的方法:方法名,返回值类型,
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 复习突然发现String没写 匿名对象 只在堆内存中开辟空间,栈内存中没有对其进行引用的一种对象。(使用一次后,会等待被GC清除) public class Test4 { public static void main(String[] a
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 继承性 面向对象三大特性:封装性,继承性,多态性。 继承的作用是避免出现大幅度的相同代码,提高代码的复用性。 //现有一个Person类,拥有name,age属性 class Person { private String name; pri
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 面向对象的三大特性 封装性,继承性,多态性。 类的组成 public class 类名 { //成员变量 int age;//数据类型 变量名; //成员方法 public 返回值类型 方法名(传参) { String name;//局部变量
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 方法 方法就是一段可以重复调用的代码。方法也称函数 其根本目的就是减少重复代码。 无参方法 无参方法其格式为: 访问修饰符 static 返回值类型 方法名(){ //方法体 [return 返回值]; } 一个常规的Java代码结构应该如下
阅读全文
摘要:Java拾贝不建议作为0基础学习,都是本人想到什么写什么 众所周知任何数据类型都可以向String转型 public static void main(String[] args) { int a = 1; int b = 2; System.out.println("1+2=" + a + b);
阅读全文