自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 注解和反射的简单学习

注解和反射1.1 什么是注解Annotation是从JDK5.0开始引入的新技术.Annotation的作用:不是程序本身,可以对程序作出解释.(这一点和注释(comment)没什么区别)可以被其他程序(比如:编译器等)读取Annotation的格式:注解是以"@注释名"在代码中存在的,还可以添加一些参数值,例如:@SuppressWarnings(value=“unchecked”).Annotation在哪里使用?可以附加在package,class,method,fi

2021-01-26 00:09:49 91

原创 网络编程的简单学习

网络编程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 116

原创 线程池的简单使用

线程池使用线程池背景:经常创建和销毁、使用量特别大的资源,比如并发情况下的线程,对性能影响很大。思路:提前创建好多个线程,放入线程池中,使用时直接获取,使用完放回池中。可以避免频繁创建销毁、实现重复利用。类似生活中的公共交通工具。好处:提高响应速度(减少了创建线程的时间)降低资源消耗(重复利用线程池中的线程,不需要每次都创建)便于线程管理(…)corePoolSize:核心池的大小maximumPoolSize:最大线程数keepAliveTime:线程没有任务时最多保持多长时间后

2021-01-25 13:41:09 89

原创 生产者消费者问题

生产者消费者问题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 82

原创 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 71

原创 实现多线程的三种方法

实现多线程的三种方法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 170

原创 九九乘法表与三角形

九九乘法表与三角形九九乘法表测试代码如下: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 149

原创 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 100

原创 markdown学习

Markdown学习标题三级标题四级标题字体Hello,World!Hello,World!Hello,World!Hello,World!引用good morning分割线图片超链接点击打开百度列表ABCABC表格名字性别生日张三男2000.08.01代码public void main...

2021-01-23 13:35:19 51

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除