Java
望_寒
这个作者很懒,什么都没留下…
展开
-
注解和反射的简单学习
注解和反射 1.1 什么是注解 Annotation是从JDK5.0开始引入的新技术. Annotation的作用: 不是程序本身,可以对程序作出解释.(这一点和注释(comment)没什么区别) 可以被其他程序(比如:编译器等)读取 Annotation的格式: 注解是以"@注释名"在代码中存在的,还可以添加一些参数值,例如:@SuppressWarnings(value=“unchecked”). Annotation在哪里使用? 可以附加在package,class,method,fi原创 2021-01-26 00:09:49 · 98 阅读 · 0 评论 -
网络编程的简单学习
网络编程 1.1 TCP实现聊天 server端的代码如下: public class TcpServerDemo01 { public static void main(String[] args) { ServerSocket serverSocket = null; Socket socket = null; InputStream inputStream = null; ByteArrayOutputStream byteArr原创 2021-01-25 17:32:55 · 122 阅读 · 0 评论 -
线程池的简单使用
线程池 使用线程池 背景:经常创建和销毁、使用量特别大的资源,比如并发情况下的线程,对性能影响很大。 思路:提前创建好多个线程,放入线程池中,使用时直接获取,使用完放回池中。可以避免频繁创建销毁、实现重复利用。类似生活中的公共交通工具。 好处: 提高响应速度(减少了创建线程的时间) 降低资源消耗(重复利用线程池中的线程,不需要每次都创建) 便于线程管理(…) corePoolSize:核心池的大小 maximumPoolSize:最大线程数 keepAliveTime:线程没有任务时最多保持多长时间后原创 2021-01-25 13:41:09 · 93 阅读 · 0 评论 -
生产者消费者问题
生产者消费者问题 1.管程法 测试代码如下: //测试:生产者消费者模型-->利用缓冲区解决:管程法 public class TestPC { public static void main(String[] args) { SynContainer synContainer = new SynContainer(); new Productor(synContainer).start(); new Consumer(synContainer)原创 2021-01-25 13:18:44 · 87 阅读 · 0 评论 -
synchronized学习
synchronized解决三大不安全案例 1.UnsafeTicket 测试代码如下: public class UnsafeTicket { public static void main(String[] args) { BuyTicket buyTicket = new BuyTicket(); new Thread(buyTicket,"小明").start(); new Thread(buyTicket,"黄牛").start();原创 2021-01-25 11:00:10 · 76 阅读 · 0 评论 -
实现多线程的三种方法
实现多线程的三种方法 1.继承Thread 测试代码如下: //创建线程方式一:继承Thread类,重写run()方法,调用start开启线程 //注意:线程开启不一定立即执行,由CPU调度执行 public class TestThread1 extends Thread { @Override public void run() { for (int i = 0; i < 10; i++) { System.out.println(Threa原创 2021-01-24 20:37:49 · 178 阅读 · 0 评论 -
九九乘法表与三角形
九九乘法表与三角形 九九乘法表 测试代码如下: public static void main(String[] args) { for (int i = 1; i <= 9; i++) { for (int j = 1; j <= i; j++) { System.out.print(j + "*" + i + "=" + i*j + "\t"); } System.out.原创 2021-01-23 21:42:09 · 155 阅读 · 0 评论 -
Scanner学习
Scanner学习 next() 一定要读取到有效字符后才可以结束输入。 对输入有效字符之前遇到的空白,next()方法会自动将其去掉。 只有输入有效字符后才将其后面输入的空白作为分隔符或者结束符。 next()不能得到带有空格的字符串 测试代码如下: public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入:")原创 2021-01-23 21:19:55 · 104 阅读 · 0 评论 -
markdown学习
Markdown学习 标题 三级标题 四级标题 字体 Hello,World! Hello,World! Hello,World! Hello,World! 引用 good morning 分割线 图片 超链接 点击打开百度 列表 A B C A B C 表格 名字 性别 生日 张三 男 2000.08.01 代码 public void main ...原创 2021-01-23 13:35:19 · 58 阅读 · 0 评论