随笔分类 -  Java基础

java基础知识点
摘要:网络编程 网络的概念 网络通信 1.概念:两台设备之间通过网络实现数据传输; 2.网络通信:将数据通过网络从一台设备传输到另一台设备 3.java.net包下提供了一系列的类或接口,完成网络通信 网络 1.概念:两台或多台设备通过一定物理设备连接起来构成了网络; 2.根据网络的覆盖范围不同,对网络进 阅读全文
posted @ 2022-06-19 15:48 忧愁小松鼠 阅读(95) 评论(0) 推荐(0) 编辑
摘要:快速入门: re.properties文件: classfullpath=com.example.Cat methodName=cry package com.example.reflection.question; import java.io.FileInputStream; import ja 阅读全文
posted @ 2022-06-19 15:45 忧愁小松鼠 阅读(276) 评论(0) 推荐(0) 编辑
摘要:I/O流 IO流原理及流的分类 流的分类 按操作数据单位不同分为:字节流(8 bit) 二进制文件,字符流(按字符) 文本文件 按数据流的流向不同分为:输入流,输出流 按流的角色不同分为:节点流,处理流/包装流 (抽象基类) 字节流 字符流 输入流 InputStream Reader 输出流 Ou 阅读全文
posted @ 2022-06-09 16:51 忧愁小松鼠 阅读(65) 评论(0) 推荐(0) 编辑
摘要:泛型 泛型注意事项 1.给泛型指向数据类型要求是引用类型,不能是基本数据类型 2.在给泛型指定具体类型后,可以传入该类型或者其子类类型 3.泛型的写法 ​ 常规写法:HashSet set = new HashSet(); ​ 省略写法:HashSet set = new HashSet<>(); 阅读全文
posted @ 2022-06-05 16:22 忧愁小松鼠 阅读(34) 评论(0) 推荐(0) 编辑
摘要:集合 Vector底层结构和ArrayList的比较 底层结构 版本 线程安全(同步)效率 扩容倍数 ArrayList 可变数组 jdk1.2 不安全,效率高 如果有参构造就是1.5倍扩容如果是无参构造1.第一次102.从第二次开始按1.5倍扩 Vector 可变数组Object[] jdk1.0 阅读全文
posted @ 2022-06-05 16:20 忧愁小松鼠 阅读(56) 评论(0) 推荐(0) 编辑
摘要:包装类 JDK5以前需要我们手动装箱和拆箱 装箱就是基本数据类型转换成包装类型 拆箱就是包装类型转换成基本数据类型 自动装箱底层使用的是Integer.valueOf()方法 自动拆箱底层使用的是intValue()方法 package com.example.wrapper_; /** * @Au 阅读全文
posted @ 2022-06-05 16:17 忧愁小松鼠 阅读(47) 评论(0) 推荐(0) 编辑
摘要:异常 异常分为两大类,运行时异常和编译时异常 运行时异常,编译器不要求强制处置的异常。一般是指编程时的逻辑错误,是程序员应该避免出现的异常。java.lang.RuntimeException类及它的子类都是运行时异常 对于运行时异常,可以不作处理,因为这类异常很普遍,若全处理可能会对程序的可读性和 阅读全文
posted @ 2022-05-10 17:59 忧愁小松鼠 阅读(65) 评论(0) 推荐(0) 编辑
摘要:形参和返回值 类名作为形参和返回值 方法的形参是类名,其实需要的是该类的对象 方法的返回值是类名,其实返回的是该类的对象 实例: package com.example.homework.MethodAndreturn; /** * @author gaoqinghui * @date 2022/5 阅读全文
posted @ 2022-05-10 17:57 忧愁小松鼠 阅读(66) 评论(0) 推荐(0) 编辑
摘要:枚举 自定义类实现枚举 1.不需要提供set方法,因为枚举对象值通常为只读 2.对枚举对象/属性使用final + static共同修饰,实现底层优化 3.枚举对象名通常使用全部大写,常量的命名规范 4.枚举对象根据需要,也可以有多个属性 package Enumeration01; /** * @ 阅读全文
posted @ 2022-05-10 17:56 忧愁小松鼠 阅读(40) 评论(0) 推荐(0) 编辑
摘要:内部类 基本介绍: 一个类的内部又完整的嵌套了另一个类结构。被嵌套的类称为内部类(inner class)。是我们类的第五大成员[类的五大成员:属性、方法、构造器、代码块、内部类],内部类的最大特点就是可以直接访问私有属性,并且可以体现类与类之间的包含关系; package com.example. 阅读全文
posted @ 2022-05-10 17:55 忧愁小松鼠 阅读(42) 评论(0) 推荐(0) 编辑
摘要:基本介绍: 接口就是给出一些没有实现的方法,封装到以一起,到某个类要使用的时候再根据具体情况把 这些方法写出来。 语法: interface 接口名 { //属性 //方法(1.抽象方法 2.默认实现方法 3.静态方法) } class 类名 implements 接口{ 自己属性; 自己方法; 必 阅读全文
posted @ 2022-05-10 17:53 忧愁小松鼠 阅读(62) 评论(0) 推荐(0) 编辑
摘要:抽象类 当父类的一些方法不能确定时,可以用abstract关键字来修饰该方法,这个方法就是抽象方法,用abstract来修饰该类就是抽象类。 * 即:父类方法不确定性的问题 * >考虑将该方法设计为抽象(abstract)方法 * >所谓抽象发放就是没有实现的方法 * >所谓没有实现就是指 没有方法 阅读全文
posted @ 2022-05-10 17:49 忧愁小松鼠 阅读(66) 评论(0) 推荐(0) 编辑
摘要:final 基本介绍: final可以修饰类、属性、方法和局部变量 下面情况下可能会用到final 当不希望类被继承时,可以用final修饰; 当不希望父类的某个方法被子类覆盖/重写时,可以用final修饰; 当不希望类的某个属性的值被修改,可以用final修饰; 当不希望某个局部变量被修改,可以用 阅读全文
posted @ 2022-05-10 17:48 忧愁小松鼠 阅读(393) 评论(0) 推荐(0) 编辑
摘要:设计模式 单例模式 饿汉式VS懒汉式 1.二者最主要的区别在于创建对象的时机不同:饿汉式是在类加载就创建了对象实例,懒汉式是在使用时才创建对象实例。 2.饿汉式不存在线程安全问题,懒汉式存在线程安全问题, 3.饿汉式存在浪费资源的可能。因为如果程序员一个对象实例都没有使用,但是在类加载时这个对象就已 阅读全文
posted @ 2022-05-10 17:32 忧愁小松鼠 阅读(29) 评论(0) 推荐(0) 编辑
摘要:代码块 1.创建一个对象时,在一个类中调用的顺序是: 1.调用静态代码块和静态属性初始化(优先级相同,如果有多个,则按他们定义的顺序调用) 2.调用普通代码块和普通属性的初始化(优先级相同,如果有多个,则按他们定义的顺序调用) 3.构造方法是最后才调用 实例: package com.example 阅读全文
posted @ 2022-05-10 17:09 忧愁小松鼠 阅读(136) 评论(0) 推荐(0) 编辑
摘要:类什么时候被加载 创建对象实例时(new) 创建子类对象实例,父类也会被加载 使用类的静态成员时(静态属性、静态方法) 实例如下: package com.example.Codeblock; /** * @author gaoqinghui * @date 2022/4/26 21:50 * */ 阅读全文
posted @ 2022-05-10 17:04 忧愁小松鼠 阅读(107) 评论(0) 推荐(0) 编辑
摘要:动态绑定机制 java的动态绑定机制: 当调用对象方法的时候,该方法会和该对象的内存地址/运行类型绑定; 当调用对象属性时,没有动态绑定机制,在哪个类中声明就用哪个类中的属性; 代码示例: package com.hspedu.poly_.dynamic_; /** * @author gaoqin 阅读全文
posted @ 2022-05-10 17:03 忧愁小松鼠 阅读(90) 评论(0) 推荐(0) 编辑
摘要:面向对象和面向过程的区别 区别简述 面向过程(Procedure Oriented):以过程为核心,强调**事件的流程、顺序,**如:C语言。 面向对象(Object Oriented):以对象为核心,强调**事件的角色、主体,**如:C++、Java。 区别 1.思路不同 2.特点不同 3.优势不 阅读全文
posted @ 2022-05-10 17:00 忧愁小松鼠 阅读(2847) 评论(0) 推荐(0) 编辑

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