09 2022 档案
摘要:Day13 多线程学习 消费者生产者问题 关键 仓库中只能存在一件商品,生产者将生产出来的产品放在仓库,消费者将仓库中的产品取走消费 所以synchronized只能解决线程同步的问题,想要解决线程之间的通信问题。 java提供了几个方法 wait() 表示线程一直等待,直到其他线程通知,与slee
阅读全文
摘要:Day12 多线程学习 同步方法及同步块 方法锁synchronized可以保证线程的同步。 形成原理就是队列和锁 在方法前加synchronized关键字这个方法就是同步方法,没有加就不安全。 synchronized控制对象的访问,每一个对象都有一把锁,synchronized方法必须调用该对象
阅读全文
摘要:Day11 多线程的学习 线程休眠sleep的使用 sleep可以模拟网络延迟和倒计时。 模拟网络延迟 在线程中使用Thread.sleep()方法,能够放大问题的发生性,能更好的把握问题所在。 比如以前的例子,多个线程同时执行一个资源,会造成一个线程执行全部的结果导致无法看到本身线程的问题,使用s
阅读全文
摘要:Day10 多线程 callable callable使用方法整体和Thread的使用方法类似,需要子类继承callable接口,并且重写call方法而不再是run方法。 而在实例时,Thread可以直接用start方法启动 callable则需要用四步来完成, //创建执行服务 ExecutorS
阅读全文
摘要:Day9 多线程学习 网图下载 利用多线程同时下载图片,这里需要用到我的服务器,刚好里面还有以前项目的几张图片。 流程就是,首先创建一个继承Thread类的子类,再写一个文件下载的类,需要用到commons io包,写好下载器的类,用子类去调用下载的方法重写run方法。然后在主函数main里面new
阅读全文
摘要:Day8 多线程学习 多线程 多任务 任务就是需要完成的一件事,多任务可能在同一时间解决,或者按步一个一个解决。 通过多条道路解决原来一条道路堵塞的问题,多线程。 就是同一时间同时完成两件或多件时期,比如main函数要调用一个方法,就是执行完方法后再继续执行main函数,而多线程就可以同时执行mai
阅读全文
摘要:Day7 面向对象编程 抽象 abstract修饰抽象类,如果修饰方法就是抽象方法。 抽象方法可以写方法体,然后让继承抽象类的类去重写抽象方法。 java的类是单继承的,但是接口可以实现多继承。 抽象类不能new,只能靠子类去实现他 抽象类也有构造方法。 接口 接口就是只有规范的即抽象方法,里面不能
阅读全文
摘要:Day6 面向对象学习 super学习 是子类调用父类的方法。比如子类有一个和父类名字相同的属性,通过super就可以调用父类的属性。 因为私有的东西无法被继承 所以super也不能调用super、 super只能出现在子类 super() 调用了父类的构造方法 而且调用父类的构造器必须放在代码的第
阅读全文
摘要:Day5 回顾方法 static 静态方法 不加static 非静态方法 static是和类一起加载的 类与对象的创建 类是一种抽象的数据类型,是对某一事物整体的描述 对象是抽象概念的具体事例 一个项目应该只存在一个main方法 使用new创建对象时,除了分配空间,还会初始化。 和C++的类似,不过
阅读全文
摘要:Day4 数组的学习 数组的使用 for-each循环 //遍历数组 for (int i : array) { } 相当于直接把array数组里的一个元素直接赋值给i,这样遍历挺快,但是没有下标。 数组做为方法入参 数组做为返回值 都很好理解就是把数组作为一个数据类型即可。 多维数组 定义二维数组
阅读全文
摘要:Day3 Java方法 什么是方法 理解上,方法和C++的函数差不多,即实现某个功能语句块的集合,尽量保证一个方法只完成一个功能。 命名规则,首字母小写后面新单词大写 类似 studentLearn 方法的重载 在一个类里面方法名称相同但参数不同,名字可以相同 仅仅返回类型不同是无法构成重载的 编译
阅读全文
摘要:Day2 java流程控制 scanner用户交互 和C++的cin>>功能类似,用来用户输入,不过scanner使用前需要先New一个对象 Scanner sc=New Scanner(System.in); String str=sc.next(); //凡是IO流的类如果不关闭,会一直占用资源
阅读全文
摘要:Day1 重新学习java的笔记 重新学java 初入大四,开始了秋招,才惶惶察觉自己大学期间什么也没学到,大一大二一直在研究算法,只在杂七杂八的算法比赛得过奖,却没机会去参加ACM算是一个遗憾,~~不过倒是洛谷签到硬生生签了365天~~,编译一直用的C++,然而大学从大三开始的课程却是要用到j
阅读全文