随笔分类 -  Java基础

摘要:一、概述 1、介绍 Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。 加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就 阅读全文
posted @ 2022-02-10 14:01 Craftsman-L 阅读(397) 评论(4) 推荐(0) 编辑
摘要:一、枚举 1、介绍 枚举类:类的对象只有有限个,确定的。当需要定义一组常量时,强烈建议使用枚举类。如果枚举类中只有一个对象,则可以作为单例模式的实现。 使用 enum 定义的枚举类默认继承了 java.lang.Enum类,因此不能再继承其他类。 2、枚举的实现 代码示例:方式一,JDK 5.0 之 阅读全文
posted @ 2022-01-17 16:18 Craftsman-L 阅读(322) 评论(0) 推荐(0) 编辑
摘要:一、概述 1、介绍 Java提供的网络类库,可以实现无痛的网络连接,联网的底层细节被隐藏在 Java 的本机安装系统里,由 JVM 进行控制。并且 Java 实现了一个跨平台的网络库,程序员面对的是一个统一的网络编程环境。 网络编程的目的:直接或间接的通过网络协议与其它计算机实现数据交换,进行通讯。 阅读全文
posted @ 2022-01-12 11:04 Craftsman-L 阅读(94) 评论(0) 推荐(0) 编辑
摘要:一、其他 1、System.in、System.out(标准输入、输出流) System.in:标准的输入流,默认从键盘输入。 System.out:标准的输出流,默认从控制台输出。 改变标准输入输出(System下的静态方法)。 void setIn(InputStream in):重新分配"标准 阅读全文
posted @ 2022-01-04 21:47 Craftsman-L 阅读(71) 评论(0) 推荐(0) 编辑
摘要:一、随机访问文件流 1、介绍 RandomAccessFile既可以作为一个输入流,又可以作为一个输出流。作为输出流时,写出到的文件如果不存在,则在执行过程中自动创建。若存在,则会对原有文件内容进行覆盖,默认情况下,从头覆盖。注意,不会覆盖掉整个文件内容。 创建 RandomAccessFile 类 阅读全文
posted @ 2022-01-04 21:08 Craftsman-L 阅读(127) 评论(0) 推荐(0) 编辑
摘要:一、对象流 1、序列化与反序列化 序列化:将内存中的Java对象保存到磁盘中或通过网络传输出去。 反序列化:将磁盘文件中的对象还原为内存中的一个Java对象。 用途: (1)将对象保存到物理硬盘:比如Web服务器中的Session对象,当有10万用户并发访问时,有可能出现10万个Session对象, 阅读全文
posted @ 2022-01-04 20:32 Craftsman-L 阅读(132) 评论(0) 推荐(0) 编辑
摘要:一、缓冲流 1、介绍 缓冲流:不能直接作用在文件上,需要包一层,它是一种处理流。用于提高文件的读写效率。它在流的基础上对流的功能进行了增强。提高读写速度的原因:内部提供了一个缓冲区。缺省使用 8192 个字节(8Kb)的缓冲区 。 源码示例:BufferedInputStream 1 public 阅读全文
posted @ 2022-01-01 14:02 Craftsman-L 阅读(271) 评论(0) 推荐(0) 编辑
摘要:一、概述 1、介绍 I/O是 Input/Output 的缩写,IO流用来处理设备之间的数据传输,如读/写文件,网络通讯等。Java对数据的操作是通过流的方式进行。java.io 包下提供了各种"流"类和接口,用以获取不同种类的数据,并通过标准的方法输入或输出数据。 输入input:读取外部数据(磁 阅读全文
posted @ 2021-12-28 22:33 Craftsman-L 阅读(302) 评论(0) 推荐(0) 编辑
摘要:一、概述 1、介绍 Java VM 启动的时候会有一个进程Java.exe,该进程中至少有一个线程负责Java程序的执行。而且这个线程运行的代码存在于main方法中,该线程称之为主线程。其实从细节上来说,JVM不止启动了一个线程,其实至少有三个线程。除了main() 主线程,还有 gc() 负责垃圾 阅读全文
posted @ 2021-09-29 10:17 Craftsman-L 阅读(496) 评论(0) 推荐(2) 编辑
摘要:一、概述 1、介绍 为什么出现集合? 答:面向对象语言对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,对对象进行存储,集合就是存储对象最常用的一种方式。 数组和集合类同是容器,有何不同? 答:数组虽然也可以存储对象,但长度是固定的,集合长度是可变的。数组中可以存储基本数据类型,集合中只能 阅读全文
posted @ 2021-09-24 10:23 Craftsman-L 阅读(363) 评论(0) 推荐(0) 编辑
摘要:一、String 1、介绍 String是一个final类,不可被继承,代表不可变的字符序列。是一个类类型的变量,Java程序中的所有字符串字面量(如"abc")都作为此类的实例实现,"abc"是一个对象。 字符串是常量,创建之后不能更改。String 类复写 了Object类中的equals方法。 阅读全文
posted @ 2020-10-30 11:51 Craftsman-L 阅读(166) 评论(0) 推荐(0) 编辑
摘要:一、比较器 1、介绍 在Java中经常会涉及到对象数组的排序问题,那么,就需要让对象具有可比性。 Java实现对对象排序的方式有两种: 自然排序:java.lang.Comparable 定制排序:java.util.Comparator 2、自然排序(Comparable) 代码示例:将学生按身高 阅读全文
posted @ 2020-10-28 23:11 Craftsman-L 阅读(138) 评论(0) 推荐(0) 编辑
摘要:一、抽象类 1、介绍 使用:abstract定义抽象类;abstract定义抽象方法,只有声明,不用实现;包含抽象方法的类必须定义为抽象类;抽象类中可以有普通方法,也可以有抽象方法;抽象类不能被实例化,但可以定义引用变量。 抽象关键字 abstract 和哪些不可以共存?final,private, 阅读全文
posted @ 2020-10-28 23:09 Craftsman-L 阅读(158) 评论(0) 推荐(0) 编辑
摘要:五、内部类 内部类(Inner Class)就是定义在一个类里面的类。与之对应,包含内部类的类被称为外部类。内部类可以用private修饰。 1、为什么要定义内部类?或者内部类的作用是什么? 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类。 内部类的方法可以直 阅读全文
posted @ 2020-10-28 23:06 Craftsman-L 阅读(121) 评论(0) 推荐(0) 编辑
摘要:一、对象 1、成员变量和局部变量的区别 两类变量同名时,局部变量具有更高的优先级。 作用域不同:局部变量的作用域仅限于定义它的方法,作用于函数或者语句中;成员变量的作用域在整个类中。 初始值不同:Java会给成员变量一个初始值;Java不会局部变量赋予初始值。 在内存中的位置:成员变量存在堆内存中, 阅读全文
posted @ 2020-10-28 19:30 Craftsman-L 阅读(169) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示