随笔分类 - java学习
回顾自查java基础
摘要:# Java-Day-36 ## 通过反射获取类的结构信息 ### 第一组:java.lang.Class 类 - 以下说的包含本类和父类 —— 也包括超类等 - 方法属性之类的若是输出时不加 .getName,则都是输出:com.zyz.Zyz() ```java public class tes
阅读全文
摘要:# Java-Day-35 ## 类加载 ### 基本说明 反射机制是 java 实现动态语言的关键,也就是通过反射实现类动态加载 - 静态加载:编译时加载相关的类,如果没有则报错,依赖性太强 - 在非具备 idea 辅助型的工具里编写代码时 ```java import java.util.Sca
阅读全文
摘要:# Java-Day-34 ## Class 类特性  * Class 也是类,因此也继承 Object 类 *
阅读全文
摘要:# Java-Day-33 ## 引出反射 ( reflection ) - 引出 - 传统 new 方法调用其方法: ```java Dog dog = new Dog(); dog.hello(); ``` - 但若要根据以下配置文件指定信息,创建 Dog 对象并调用方法 hello: ```x
阅读全文
摘要:# Java-Day-32 ## 多用户即时通信系统 ### 文件传输 - 思路: - 客户端里先把文件读取到客户端为字节数组,把文件对应的字节数组封装到 message 对象,内含文件内容、sender、getter,将 message 对象发送给服务端 - 拆解 message 对象获取 get
阅读全文
摘要:# Java-Day-31 ## 多用户即时通信系统 ### 无异常退出 - 问题指出: - 客户端输入 9 退出的是输出在控制台的主线程,退出的是主菜单,并没有真正的退出 - 因为客户端启动后,相当于是开启了一个进程,在这个进程中启动了一个主线程 ( main 线程 ),在 main 主线程中又启
阅读全文
摘要:# Java-Day-30 ## 多用户即时通信系统 - 需求分析 - 用户登录 - 拉取在线用户列表 - 无异常退出 - 私聊 - 群聊 - 发文件 - 服务器推送新闻 ### 用户登录 - 功能说明 - 我们暂时人为规定用户名 / id = 100,密码 123456 就可以登录,其他用户不能登
阅读全文
摘要:# Java-Day-29 ## UDP 网络通信编程 ( 了解 ) ### 基本介绍 - 类 DatagramSocket 和 DatagramPacket 实现了基于 UDP 协议网络程序 - DatagramSocket:数据报套接字 - DatagramPacket:数据包 / 数据报 -
阅读全文
摘要:# Java-Day-28 ## 网络相关概念 ### 网络通信 - 两台设备之间通过网络实现数据传输 ( 将数据通过网络从一台设备传输到另一台设备 ) - java.net 包下提供了一系列的类或接口,供程序员使用,完成网络通信 ### 网络 - 两台或多台设备通过一定物理设备连接起来构成了网络
阅读全文
摘要:# Java-Day-27 ## Properties 类 - 程序读取 xx.properties 配置文件,修改的话就通过配置文件将信息写入到程序 ( 非写死在程序中,灵活性差,编译代价大 ) - 传统方法: ```java public class Test { public static v
阅读全文
摘要:# Java-Day-26 ## 节点流和处理流 ### 序列化和反序列化 - 序列化就是在保存数据时,保存数据的值和数据类型 - 反序列化就是在恢复数据时,恢复数据的值和数据类型 - 需要让某个对象支持序列化机制,则必须让其类是可序列化的 - 其类必须实现如下两个接口之一: - Serializa
阅读全文
摘要:# Java-Day-25 ## InputStream ( 字节输入流 )  - InputStream 抽象
阅读全文
摘要:# Java-Day-24 ## 文件 - 文件就是保存数据的地方 ### 文件流 - 文件在程序中是以流的形式来操作的 - 流:数据在数据源 ( 文件 ) 和程序 ( 内存 ) 之间经历的路程 - 输入流:数据从数据源 ( 文件 ) 到程序 ( 内存 ) 的路径 - 输出流:数据从程序 ( 内存
阅读全文
摘要:# Java-Day-23 ## 线程终止 - setLoop() ### 基本说明 - 当线程完成任务后,会自动退出 - 还可以通过使用变量来控制 run 方法退出的方式停止线程,即通知方式 ### 练习使用 ```java public class test1 { public static v
阅读全文
摘要:# Java-Day-22 ## 线程相关概念 - 程序:是为完成特定任务、用某种语言编写的一组指令的集合 ( 就是平常所写代码 ) - 进程:运行中的程序,例如,打开一个软件就启动一个进程,操作系统就会给每个启动的软件分配一新的内存 ( 活动进程占用的物理内存 ) 空间 - 进程是程序的一次执行过
阅读全文
摘要:Java-Day-21 泛型 ( generic ) 理解和好处 传统方法: ArrayList arrayList = new ArrayList(); arrayList.add(new Person(1001, "AA")); // 若是误入一个 new Animal(.....) // ge
阅读全文
摘要:Java-Day-20 Collections 工具类 介绍 Collections 是一个操作 Set、List 和 Map 等集合的工具类 ( 仅有无参 ) Collections 中提供了一系列静态的方法对集合元素进行排序、查询和修改等操作 常用方法 排序操作 ( 均为 static 方法 )
阅读全文
摘要:Debug 自行回顾跟随源码所得理解 能力有限,有问题还请求指正 List ArrayList 维护的是一个 Object 类型的数组 elementData 使用的几乎都是 ArrayList 内部类 无参构造器 起初构造器给一个空 Object 数组:this.elementData = DEF
阅读全文
摘要:Java-Day-19 总结 - 开发中如何选择集合实现类 在开发中,选择什么集合实现类,主要取决于业务操作特点,然后根据集合实现类特性进行选择 先判断存储的类型 ( 一组对象或一组键值对 ) 一组对象 ( 单列 ):Collection 接口 允许重复:List 增删多:LinkedList [
阅读全文
摘要:Java-Day-18 Map 接口 Map 存放是 K - V ( 双列 ) 元素,K 和 V 都是输入的具体的对象 Set 也是 K - V 键值对的形式,只不过除了 K 都是表示值,V 是用常量 PRESENT 来替代的 Map 接口实现类的特点 ( 这里讲的是 JDK8 的接口特点 ) Ma
阅读全文