随笔分类 - javaSE(1)
第一阶段学习
摘要:##多线程 ###生产者消费者问题 ####信号灯法 ###线程池 ##网络编程 网络:将地理位置不同的多台计算机及其外部设备通过某种设备连接起来 网络编程目的:传播交流信息,进行数据交换,通信 打电话——TCP连接 发短信——UDP连接 用端口定位网络上的主机 通信双方地址: ip+端口号可以定位
阅读全文
摘要:##接口 接口定义包括接口定义和接口体,接口体中包含常量的声明和抽象方法(抽象方法没有方法体) 在接口中属性一定是静态常量,所以final和static可以省略,方法一定是抽象方法,所以public和abstract可省略 如果实现类没有重写接口中的所有方法,那么这个类一定是抽象类 如果父类实现了某
阅读全文
摘要:##继承 重写的方法类型可以是父类方法类型的子类型 如父类方法Object get(),子类是Integer get()也属于方法重写 访问权限修饰符从高到低:public protected 友好的 private 子类重写父类方法时,不允许降低访问权限,可以提高 ###关于super publi
阅读全文
摘要:##面向对象流水线 ###有理数的类封装 public class Rational { int numerator = 1;//分子分母初始值都设1 int denominator =1; //设置分子的值,化简的过程 void setNumerator(int a){//a为暂时的分子 int
阅读全文
摘要:#多线程 ###死锁 多个线程互相持有对方需要的资源,然后形成僵持 public class DeadLock { public static void main(String[] args) { Makeup makeup = new Makeup(0,"莉莉"); Makeup makeup1
阅读全文
摘要:#多线程 ##线程状态 ###守护线程 线程分为用户线程和守护线程 虚拟机必须确保用户线程执行完毕 虚拟机不用等待守护线程执行完毕,如后台记录操作日志,监控内存,垃圾回收等待 thread.setDaemon(true) 设置守护线程 ##线程同步 ###并发:同一个对象被多个线程同时操作 ###队
阅读全文
摘要:#多线程 ###线程休眠 sleep指定当前线程阻塞的毫秒数 sleep需要抛出InterruptedException sleep时间到达后线程进入就绪状态 sleep可以模拟网络延时,倒计时等 每个对象都有一个锁,sleep不会释放锁 ####模拟网络延时 //模拟网络延时:放大问题的发生概率
阅读全文
摘要:#多线程 ###线程创建方式三:实现Callable接口 需要有返回值,要与重写的方法相同 重写call方法,需要抛出异常 创建目标对象 创建执行服务:ExecutorService ser = Executors.newFixedThreadPool() 提交执行:Future result1 =
阅读全文
摘要:##多线程 ###Process进程 进程是程序执行的过程 ###Thead线程 进程里有线程,是线程在运行 ###Thread类 ####创建线程方式一:继承Thread类,重写run()方法,调用start开启线程 注意:线程不一定立即执行,有CPU调度执行 public class TestT
阅读全文
摘要:##File类 概念:代表物理盘符中的一个文件或者文件夹 public class Test { public static void main(String[] args) throws Exception { separator(); fileOpe(); directoryOpe(); } /
阅读全文
摘要:##字节流 ###对象流 增强了缓冲区功能 增强了读写8种基本数据类型和字符串功能 增强了读写对象的功能 1)readObject()从流中读取一个对象 反序列化 2)writeObject()向流中写入一个对象 序列化 注意事项: 1)序列化类必须要实现Serializable接口 2)序列化类中
阅读全文
摘要:#I/O框架 ##什么是流 概念:内存与存储设备之间传输数据的通道 ##流的分类 按方向: 1)输入流:将<存储设备>中的内容读入<内存>中 2)输出流:将<内存>中的内容写入<存储设备>中 按单位: 1)字节流:以字节为单位,可以读写所有数据 2)字符流:以字符为单位,只能读写文本数据 按功能:
阅读全文
摘要:###Map接口的使用 public class Test { public static void main(String[] args) { Map<String,String> map = new HashMap<>();//创建Map对象 //添加 map.put("cn","中国"); m
阅读全文
摘要:###TreeSet 基于HashCode计算元素存放位置 基于排列顺序实现元素不=重复 public class Person implements Comparable<Person>{//必须先继承 private String name ; private int age,phone; @O
阅读全文
摘要:##泛型 其本质是参数类型,把类型当作参数传递 作用 1)提高代码的重用性 2)防止类型转换异常,提高代码的安全性 泛型只能是引用类型 不同的泛型对象不能相互赋值 ###泛型类 /** * 泛型类 * 语法:类名<T > T表示引用类型,可写多个,要用逗号隔开 */ public class MyG
阅读全文
摘要:#集合 ##List ###List接口的使用 public class Test { public static void main(String[] args){ //添加数字类型的数据 List list = new ArrayList(); //在集合中添加数据时会自动装箱 list.add
阅读全文
摘要:#集合框架 ##集合 概念:对象的容器,定义了对多个对象进行操作的常用方法,可实现数组的功能 和数组的区别 1)数组长度固定,集合不固定 2)数组可存基本类型和引用类型,集合只能存引用类型 集合的位置:java.util.*; ##Collection体系集合 ###Collection父接口 特点
阅读全文
摘要:##Date类 表示特定的瞬间,精确到毫秒 ####时间单位 1秒 = 1000毫 1毫秒 = 1000微秒 1微秒 = 1000纳秒 ##Calendar类 提供了获取或设置各种日历字段的方法 构造方法:protected Calendar(),由于修饰符是protected,所以无法直接创建该对
阅读全文
摘要:###String常用方法 public class Test { public static void main(String[] args) { String content = " 张三是个 好人Oya"; //1.length方法返回字符串的长度 System.out.println(con
阅读全文
摘要:##Integer缓冲区 java预先创建了256个常用的整数包装类型对象,-128~127 在实际应用中,对已经创建的对象进行复用 public class Demo { public static void main(String[] args) { Integer integer1 = new
阅读全文