随笔分类 - java基础
摘要:java模拟数组+链表 模拟链表:java简单模拟双向链表 - CoderDreams - 博客园 (cnblogs.com) public class HashMapDemo { public static void main(String[] args) { // 模拟数组+链表 // 创建一个
阅读全文
摘要:java简单模拟双向链表 模拟一个简单的双向链表 Node类 // 定义一个Node类,node对象表示双向链表的一个节点 class Node { public Object item; public Node next; public Node pre; public Node(Object i
阅读全文
摘要:接口的补充 接口中的默认方法 可写入默认的方法体,可不重写,重写时去掉default修饰符 接口中的静态方法 可写入方法体,只能被接口静态调用,实现类也不能调用 接口中的私有方法 可使用private修饰符,实现对接口中静态方法或默认方法的抽离
阅读全文
摘要:文件与集合之间转换 字符串 集合到文件 需求:把ArrayList集合中的字符串数据写入到文本文件。要求:每一个字符串元素作为文件中的一行数据 思路: 创建ArrayList集合 往集合中存储字符串元素 创建字符缓冲输出流对象 遍历集合,得到每一个字符串数据 调用字符缓冲输出流对象的方法写数据 释放
阅读全文
摘要:斗地主随机发牌实现 需求: 通过程序实现斗地主过程中的洗牌,发牌和看牌 思路: 创建一个牌盒,也就是定义一个集合对象,用ArrayList集合实现 往牌盒里面装牌 洗牌,也就是把牌打撒,用Collections的shuffle()方法实现 发牌,也就是遍历集合,给三个玩家发牌 看牌,也就是三个玩家分
阅读全文
摘要:键盘录入一个字符串,要求统计字符串中每个字符串出现的次数 需求:键盘录入一个字符串,要求统计字符串中每个字符串出现的次数。 举例:键盘录入“aababcabcdabcde" 在控制台输出:“a(5)b(4)c(3)d(2)e(1)" 思路: 键盘录入一个字符串 创建HashMap集合,键是Chara
阅读全文
摘要:利用ArrayList制作一个学生管理系统 学生实体类代码: package train.base.studentManagerSystem; // Student实体类 public class Student { private int uid; private String name; pri
阅读全文
摘要:java基础的6个实训 不死神兔 需求: 有一对兔子, 从出生后第3个月起每个月都生一对兔子, 小兔子长到第三个月后每个月又生一对兔子, 假如兔子都不死,问第二十个月的兔子对数为多少? 思路: 定义一个数组存储兔子对数 第一月、第二月都是已知,都是1, 找到规律用循环实现计算 代码: public
阅读全文
摘要:java中IO字符缓冲流的使用 字符缓冲流的基础使用 /* * 字符缓冲流 * BufferedWriter和BufferedReader * */ import java.io.*; public class Buffer { public static void main(String[] ar
阅读全文
摘要:java中基础字符流使用 java中编码表编码解码 中文的编码都是负数 UTF-8中每个中文字符占3个字节 GBK中每个中文字符占2个字节 编码解码要使用统一的编码表 默认使用UTF-8 字符串中编码解码 import java.io.UnsupportedEncodingException; im
阅读全文
摘要:IO缓冲流 字节缓冲输入输出流 创建缓冲区,提高性能 字节缓冲输入流构造方法:public BufferedInputStream(InputStream in) 字节缓冲输出流构造方法:public BufferedOutputStream(OutputStream out) import jav
阅读全文
摘要:IO字符流拷贝视频或图片等字节数据 复制视频的四种方式 小结: 四种方法中最不建议第一种 最推荐使用第四种(多使用缓冲字节流一次读写一个字节数组) import java.io.*; public class Copy { public static void main(String[] args)
阅读全文
摘要:IO读数据 基础的读取 创建字节输入流对象 将字节数据从硬盘中输入至内存以达到读取数据 会被抛来异常,可以选择抛出或者try-catch处理 调用read()方法将指定字节写入此文件输出流中 所有流最后都要释放资源 import java.io.FileInputStream; import jav
阅读全文
摘要:IO写入数据 基础的写入 创建字节输出流对象 将字节数据从内存中输出至硬盘以达到写入数据 会被抛来异常,可以选择抛出或者try-catch处理 调用write()方法将指定字节写入此文件输出流中 所有流最后都要释放资源 import java.io.FileOutputStream; import
阅读全文
摘要:File类的使用 FIle类的常用三种构造方法 最常用是第一种和第三种 可以用第三种定义一个基础目录,减少代码量 public class Demo1 { public static void main(String[] args) { // 第一种 // new一个File类的实例 // 构造器参
阅读全文
摘要:线程的创建 步骤: 自定义线程类继承Thread类 重写run() 创建线程对象,调用start()启动线程 /* * 线程开启不一定立即执行,由CPU调度 * */ // 自定义线程类继承Thread类 public class Demo1 extends Thread{ // 重写run() @
阅读全文
摘要:自定义异常 自定义异常方法 创建自定义异常类,继承Exception类 在方法中通过throw关键字抛出异常对象 在方法中抛出,可以用try-catch自己处理,也可以throws给方法调用者 自定义异常类 // 自定义的异常类 public class MyException extends Ex
阅读全文
摘要:抽象类和接口 抽象类 特点: 不能实例化 只能靠子类去实现方法 抽象类里可以写普通方法,但是抽象方法必须写在抽象类中 // abstract抽象类 // java种类是单继承的,但是接口是多继承的 public abstract class Demo1 { // 抽象方法 // 只有方法名,没有方法
阅读全文
摘要:面向对象的三大特性 全是自我总结,没有一点参考,有错概率很大,如果有错,请立马提出 封装 简单讲,封装就是把一个常用的工具做出来,用来反复使用 我们最早接触到的System.out.println()就是一个很好的封装 向println()方法中添加参数,不用关注内部的运行,就可以在控制台中进行数据
阅读全文
摘要:java中的多态 多态 一个对象的实际类型是确定的 但是可以指向的引用类型是不确定的 对象能执行哪些方法主要看左边类型,和右边关系不大 多态的注意点: 多态是方法的多态,属性没有多态 是父子关系 存在继承关系,方法需要重写,父类引用指向子类对象 不能重写的方法 static 方法:属于类,不属于对象
阅读全文

浙公网安备 33010602011771号