06 2021 档案

摘要:package com.yeyue.thread; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.FutureTask 阅读全文
posted @ 2021-06-29 22:18 深夜暗月 阅读(64) 评论(0) 推荐(0)
摘要:死锁产生的四个必要条件 互斥条件:一个资源每次只能被一个进程使用 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放 不剥夺条件:进程已获得的资源,在未使用完之前,不能强制剥夺 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系 实例 package com.yeyue.t 阅读全文
posted @ 2021-06-29 21:52 深夜暗月 阅读(119) 评论(0) 推荐(0)
摘要:买票 package com.yeyue.syn; ​ //不安全的买票 public class UnSafeBuyTicket { public static void main(String[] args) { BuyTicket ticket = new BuyTicket(); ​ new 阅读全文
posted @ 2021-06-29 14:53 深夜暗月 阅读(154) 评论(0) 推荐(0)
摘要:不建议使用强制执行,可能会导致线程阻塞 package com.yeyue.demo01; ​ public class TestJoin implements Runnable{ ​ @Override public void run() { for (int i = 0; i < 1000; i 阅读全文
posted @ 2021-06-28 17:31 深夜暗月 阅读(196) 评论(0) 推荐(0)
摘要:下城礼让不一定成功,让CPU重新调度 package com.yeyue.demo01; ​ public class TestYield { public static void main(String[] args) { MyYield myYield =new MyYield(); ​ new 阅读全文
posted @ 2021-06-28 15:01 深夜暗月 阅读(50) 评论(0) 推荐(0)
摘要:模拟网络延时 package com.yeyue.demo01; ​ //模拟网络延时,放大问题的发生性 public class TestSleep1 implements Runnable{ ​ //票数 private int ticketNums =10; ​ @Override publi 阅读全文
posted @ 2021-06-28 14:51 深夜暗月 阅读(183) 评论(0) 推荐(0)
摘要:package com.yeyue.demo01; ​ /* 1、建议线程正常停止 >利用次数,不建议死循环 2、建议使用标志位 >设置一个标志位 3、不要使用stop或者distory等过时或者jdk不建议的使用方法 */ ​ public class TestStop implements Ru 阅读全文
posted @ 2021-06-28 14:19 深夜暗月 阅读(88) 评论(0) 推荐(0)
摘要:代码简化过程 public class TestLambda1 { ​ //3、静态内部类 static class Like2 implements ILike{ @Override public void lambda() { System.out.println("你好啊,我的朋友2"); } 阅读全文
posted @ 2021-06-28 14:13 深夜暗月 阅读(286) 评论(0) 推荐(0)
摘要://静态代理模式//真实对象和代理对象都要实现同一接口//代理对象要代理真是角色 //好处://代理对象可以做很多真实对象做不了的事//真实对象专注做自己的事情 public class StaticProxy { public static void main(String[] args) { Y 阅读全文
posted @ 2021-06-28 14:09 深夜暗月 阅读(93) 评论(0) 推荐(0)
摘要:线程创建 继承Thread类 package com.yeyue.demo01; ​ //创建线程方式一:继承Thread类,重写run()方法,调用start开启线程 ​ //线程开始不一定立即执行,由cpu调度 ​ public class TestThread1 extends Thread 阅读全文
posted @ 2021-06-28 10:04 深夜暗月 阅读(158) 评论(0) 推荐(0)
摘要:窗口 面板 package com.yeyue.lesson04; ​ import javax.swing.*; import java.awt.*; ​ public class JFrameDemo { ​ //init() ;初始化 public void init(){ JFrame fr 阅读全文
posted @ 2021-06-24 14:47 深夜暗月 阅读(91) 评论(0) 推荐(0)
摘要:介绍 包含了很多类和接口 元素:窗口、按钮、文本框 java.awt Frame 就是一个窗口 实现 package com.yeyue.lesson01;​import java.awt.*;​public class TestFrame2 { public static void main(St 阅读全文
posted @ 2021-06-23 23:15 深夜暗月 阅读(81) 评论(0) 推荐(0)
摘要:需要掌握的三种异常类型 非运行时异常 运行时异常 ArrayIndexOutOfBoudsException(数组下标越界) NullPointerException(空指针异常) ArithmeticException (算术异常) MissingResourceException(丢失资源) C 阅读全文
posted @ 2021-06-22 23:33 深夜暗月 阅读(1051) 评论(0) 推荐(0)
摘要:面向对象的本质 以类的方式组织代码,以对象的组织(封装)数据。 三大特性 封装、继承和多态 类和对象的关系 类是一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物。 对象是抽象概念的具体实例 Application package com.oop.demo02;​pu 阅读全文
posted @ 2021-06-22 21:46 深夜暗月 阅读(146) 评论(0) 推荐(0)
摘要:数组声明 dateType[] arrayRefVar; //首选的方法 或 dateType arrayRefVar[]; //效果相同,但不是首选方法 Java使用new创建数组语法 dateType arrayRefVar = new dataType[arraySize]; 获取数组长度 a 阅读全文
posted @ 2021-06-18 15:34 深夜暗月 阅读(84) 评论(0) 推荐(0)
摘要:Java的方法 是解决一类问题的步骤的有序集合 包含于类或对象中 在程序中被创建,在其他地方被引用 一般只完成一个功能,利于后期扩展! 语法 修饰符 返回值类型 方法名(参数类型 参数名){ ... 方法体 ... return 返回值; } 实例 package com.yeyue.method; 阅读全文
posted @ 2021-06-18 11:17 深夜暗月 阅读(143) 评论(0) 推荐(0)
摘要:package com.yeyue.struct; public class TestDemo { public static void main(String[] args) { //打印三角形 5行 for (int i = 1; i <= 5; i++) { for (int j = 5; j 阅读全文
posted @ 2021-06-17 23:14 深夜暗月 阅读(153) 评论(0) 推荐(0)
摘要:#### 实例1: ```javapackage com.yeyue.struct; public class BreakDemo { public static void main(String[] args) { int i = 0; while (i<100){ i++; System.out 阅读全文
posted @ 2021-06-17 22:19 深夜暗月 阅读(72) 评论(0) 推荐(0)
摘要:语法 for (声明语句:表达式){ //代码语句} 实例: package com.yeyue.struct;​public class ForDemo05 { public static void main(String[] args) { int[] numbers = {10, 20, 30 阅读全文
posted @ 2021-06-17 21:56 深夜暗月 阅读(58) 评论(0) 推荐(0)
摘要:语法 for (初始化;布尔表达式;更新){ //代码语句} 特点: 支持迭代的一种通用结构,是最有效和最灵活的 循环结构 执行次数是在执行点就定义好的 实例1: package com.yeyue.struct;​public class ForDemo01 { public static voi 阅读全文
posted @ 2021-06-17 21:54 深夜暗月 阅读(73) 评论(0) 推荐(0)
摘要:语法 do { //代码语句}while(布尔表达式); 与while的区别 while是先判断再执行,do while是先执行再判断 循环体至少会被执行一次 实例1: package com.yeyue.struct;​public class DoWhileDemo01 { public sta 阅读全文
posted @ 2021-06-17 20:27 深夜暗月 阅读(145) 评论(0) 推荐(0)
摘要:语法 while(布尔表达式){ //循环内容} 特点 只要布尔表达式值为true,循环会一直执行 需要一个让表达式失效的当时来结束循环 服务器请求等少数情况会需要循环一直执行 正常的业务程序中要避免死循环 实例1: package com.yeyue.struct;​public class Wh 阅读全文
posted @ 2021-06-17 20:15 深夜暗月 阅读(88) 评论(0) 推荐(0)
摘要:实现方式:switch case语句 switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支 switch语句中的变量类型可以是: byte、short、int或者char 从Java SE7开始,switch 支持字符串 String类型 case标签必须为字符串常量 阅读全文
posted @ 2021-06-17 19:56 深夜暗月 阅读(95) 评论(0) 推荐(0)
摘要:if单选择结构 if (布尔表达式){ //如果布尔表达式为ture将执行的语句 } 实例: package com.yeyue.struct; ​ import java.util.Scanner; ​ public class IfDemo01 { public static void main 阅读全文
posted @ 2021-06-17 17:46 深夜暗月 阅读(447) 评论(0) 推荐(0)
摘要:JAVA的基本结构就是顺序结构,除非特别指明,否则按照顺序逐句执行 是任何一个算法都离不开的一种基本算法结构 package com.yeyue.struct; ​ public class ShunXuDemo { public static void main(String[] args) { 阅读全文
posted @ 2021-06-17 17:04 深夜暗月 阅读(51) 评论(0) 推荐(0)
摘要:Scanner对象 可以通过scanner类(java.util.Scanner)来获取用户的输入 基本语法: Scanner s = new Scanner(System.in); 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用hasNext 阅读全文
posted @ 2021-06-17 16:53 深夜暗月 阅读(146) 评论(0) 推荐(0)
摘要:javaDoc命令是用来生成自己的API文档的 参数信息 @author 作者名 @version 版本号 @since 指明需要最早使用的jdk版本 @param 参数名 @return 返回值情况 @throws 异常抛出情况 package base; /** * @autor yeyue * 阅读全文
posted @ 2021-06-17 15:19 深夜暗月 阅读(411) 评论(0) 推荐(0)
摘要:Java提供了包机制,用于区别类名的命名空间 包语句的语法格式为: package pkg1[.pkg2[.pkg3...]]; 一般利用公司域名倒置作为包名 为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用“import”语句可以完成此功能。 import package[. 阅读全文
posted @ 2021-06-17 14:43 深夜暗月 阅读(72) 评论(0) 推荐(0)
摘要:JAVA语言支持以下运算符 优先级() 算数运算符:+,-,*,/,%,++,-- 实例1: package operator; ​ public class Demo01 { public static void main(String[] args) { //二元运算符 //Ctrl = D : 阅读全文
posted @ 2021-06-17 11:54 深夜暗月 阅读(577) 评论(0) 推荐(0)
摘要:变量 Java变量是程序中最基本的存储单元,其要素包括变量名、变量类型和作用域。 type varName [=value] [{,varName[=value]}]; //数据类型 变量名=值;可以使用逗号隔开来声明多个同类型变量 注意事项 每个变量都有类型,类型可以是基本类型,也可以是引用类型 阅读全文
posted @ 2021-06-17 10:08 深夜暗月 阅读(108) 评论(0) 推荐(0)
摘要:类型转换 由于Java是强类型语言,要进行有些运算时需要用要类型转换 由低到高为: byte,short,char --> int --> long --> float --> double 运算中,不同类型的数据先转化为同一类型,然后进行运算 强制类型转换 自动类型转换 类型转换注意点 不能对布尔 阅读全文
posted @ 2021-06-16 17:58 深夜暗月 阅读(366) 评论(0) 推荐(0)
摘要:public class Demo03 { public static void main(String[] args) { //整数拓展: 进制 二进制0b 十进制 八进制0 十六进制0x int i = 10; int i2 = 010; //八进制 0 int i3 = 0x10; //十六进 阅读全文
posted @ 2021-06-16 17:18 深夜暗月 阅读(393) 评论(0) 推荐(0)
摘要:数据类型 强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用(安全性比较高) Java数据类型的分类 基本类型 数值类型 整数类型 byte占1个字节 范围:-128~127 short占2个字节 范围:-32768~32767 int 占4个字节 范围:-2147483648 阅读全文
posted @ 2021-06-16 16:36 深夜暗月 阅读(154) 评论(0) 推荐(0)
摘要:Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。 注意点 所有的标识符都应该以字母、($) 或者 (_) 开始 首字母之后可以是 字母、($)、(_)或者任何字符的组合 不能使用关键字作为变量名或者方法名 标识符大小写十分敏感 合法标识符举例:age、name、$salary 阅读全文
posted @ 2021-06-16 15:38 深夜暗月 阅读(500) 评论(0) 推荐(0)
摘要:单行注释 多行注释 文档注释 public class Hello { public static void main(String[] args) { //输出 Hello,World System.out.println("Hello,World"); /* 你好啊 我是 多行注 释 */ /* 阅读全文
posted @ 2021-06-16 15:14 深夜暗月 阅读(72) 评论(0) 推荐(0)
摘要:新建工程HelloWorld public class Hello { public static void main(String[] args) { System.out.println("Hello,World"); }} 运行项目 注意 快捷键 psvm public static void 阅读全文
posted @ 2021-06-16 12:44 深夜暗月 阅读(63) 评论(0) 推荐(0)
摘要:新建环境变量【classpath】变量值为【.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar】 新建环境变量【JAVA_HOME】变量值为jdk的安装目录 如:【C:\Program Files\Java\jdk1.8.0_251】 在已有的环境变量【path】 阅读全文
posted @ 2021-06-16 11:29 深夜暗月 阅读(96) 评论(0) 推荐(0)
摘要:JDK Java Development Kit :java的开发工具(包括了jre和jvm) JRE Java Runtime Environment :java运行是环境(包括了jvm) JVM Java Virtual Machine :java虚拟机 阅读全文
posted @ 2021-06-16 10:25 深夜暗月 阅读(69) 评论(0) 推荐(0)
摘要:标题:# 二级标题 三级标题 四级标题 字体 Hello,World Hello,World HELLO,World HELLO,world 引用 选择java 分割线 图片 超链接 点击跳转到百度 列表 A C A B C 表格 名字性别生日 张三 男 1997.11.12 代码 public s 阅读全文
posted @ 2021-06-15 22:48 深夜暗月 阅读(32) 评论(0) 推荐(0)