自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 三大不安全案例

不安全买票package com.jia.lesson;import java.security.PrivateKey;//不安全的买票public class UnsafeBuyTicket { public static void main(String[] args) { BuyTicket buyTicket = new BuyTicket(); new Thread(buyTicket,"me").start(); new

2021-10-16 21:13:16 74

原创 守护线程daemon

package com.jia.lesson;//守护线程//虚拟机必须等待用户线程执行完毕//虚拟机不必等待守护线程执行完毕public class TestDaemon { public static void main(String[] args) { God god = new God(); Me me = new Me(); Thread thread1 = new Thread(god); Thread th.

2021-10-16 12:33:10 68

原创 线程优先级

package com.jia.lesson;//测试线程优先级public class TestPriority { public static void main(String[] args) throws InterruptedException { //主线程默认优先级 System.out.println(Thread.currentThread().getName()+"-->"+Thread.currentThread().getPrior.

2021-10-16 12:08:52 60

原创 观测线程状态

package com.jia.lesson;//观察测试线程的状态public class TestState { public static void main(String[] args) throws InterruptedException { Thread thread = new Thread(()->{ for (int i = 0; i < 5; i++) { try { .

2021-10-16 11:51:15 47

原创 线程强行执行_join

join合并线程,待此线程执行完成后,再执行其他线程,其他线程阻塞可以想象为插队package com.jia.lesson;//插队public class TestJoin implements Runnable{ @Override public void run() { for (int i = 0; i < 100; i++) { System.out.println("线程vip来了"+i); }

2021-10-16 09:34:13 41

原创 线程礼让yield

package com.jia.lesson;//测试礼让线程//礼让不一定成功,看cpu心情public class TestYield { public static void main(String[] args) { MyYield myYield = new MyYield(); new Thread(myYield,"a").start(); new Thread(myYield,"b").start(); }}.

2021-10-15 18:46:46 31

原创 线程休眠sleep

package com.jia.lesson;//模拟倒计时public class TestSleep { public static void main(String[] args) throws InterruptedException { tenDown(); } public static void tenDown() throws InterruptedException { int num=10; while(t.

2021-10-15 18:36:21 37

原创 线程停止

线程状态:package com.jia.lesson;//测试stop//1.建议线程正常停止--->利用次数,不建议死循环//2.建议使用标志位--->设置一个标志位//3.不要使用stop或者destroy等过时或者jdk不建议使用的方法public class TestStop implements Runnable{ //1.设置一个标志位 private boolean flag=true; @Override .

2021-10-15 18:13:09 28

原创 静态代理

package com.jia.lesson;//静态代理//真实对象和代理对象都要实现同一个接口//代理对象要代理真实角色 new You()public class StaticProxy { public static void main(String[] args) { WeddingCompany weddingCompany = new WeddingCompany(new You()); weddingCompany.marry(); .

2021-10-14 19:13:10 32

原创 Lamda表达式

理解Functional Interface(函数式接口)是学习lambda表达式的关键所在函数式接口的定义:1.任何接口,如果只包含唯一一个抽象方法,那么他就是一个函数式接口2.对于函数式接口,可以通过lambda表达式创建该接口的对象package com.jia.lesson;/*推导lambda表达式 */public class Lambda { //3.静态内部类 static class Like2 implements ILike{

2021-10-14 17:08:48 127

原创 实现Callable接口(了解)

1.实现Callable接口,需要返回值类型2.重写call方法,需要抛出异常3.创建目标对象4.创建执行服务:ExecutorService ser=Executors.newFixedThreadPool(1);5.提交执行:Future<Boolean> result1=ser.submit(t1);6.获取结果:boolean r1=result.get()7.关闭服务:ser.shutdownNow();package com.jia.lesson;/

2021-10-14 16:06:16 173

原创 龟兔赛跑

package com.jia.lesson;//模拟龟兔赛跑public class Race implements Runnable { //胜利者 private static String winner; @Override public void run() { for (int i = 0; i <= 100; i++) { //模拟兔子休息 if (Thread.currentT.

2021-10-08 21:23:16 37

原创 初识并发问题

package com.jia.lesson;//多个线程操作一个对象public class TestThread4 implements Runnable { private int ticketNumbers = 10; @Override public void run() { while (true) { if (ticketNumbers <= 0) { break; .

2021-10-07 22:04:50 37

原创 实现Runnable接口

方法:1.定义MyRunnable类,实现Runnable接口2.实现run()方法,编写线程执行体3.创建线程对象,调用start()方法启动线程继承Thread类:1.启动线程:子类对象.start()2.不建议使用,避免oop单继承局限性实现Runnable接口:1.启动线程:传入目标对象+Thread对象.start()2.避免了oop单继承局限性,方便一个对象被多个线程使用package com.jia.lesson;//创建线程方式2public

2021-10-07 21:57:21 239

原创 网图下载

package com.jia.lesson;import org.apache.commons.io.FileUtils;import java.io.File;import java.io.IOException;import java.net.URL;//练习Thread,实现多线程同步下载图片public class TestThread2 extends Thread { private String url; private String name; .

2021-10-07 15:58:19 74

原创 继承Thread类

package com.jia.lesson;//创建线程方式一:继承Thread类,重写run()方法,调用start开启线程//总结:线程开启不一定立即执行,由cpu调度执行public class TestThread extends Thread { @Override public void run() { //run方法线程体 for (int i=0;i<20;i++){ System.out.prin.

2021-10-07 15:25:06 44

原创 多任务,线程,进程,多线程

线程就是独立的执行路径 在程序运行时,即使没有创建线程,后台也会有多个线程,如主线程,gc线程 main()称为主线程,为系统的入口,用于执行整个程序 在一个进程中,如果开辟了多个线程,线程的运行由调度器安排调度,调度器与操作系统紧密相连,先后顺序是不能人为干预的 对同一资源进行操作时,会存在资源抢夺的问题,需要加入并发控制 线程会带来额外的开销,如cpu调度时间,并发控制开销 每个线程在自己的工作内存交互,内存控制不当会造成数据不一致...

2021-10-05 13:10:50 63

原创 文本框,密码框,文本域

1.文本框package com.jia.lesson;import javax.swing.*;import java.awt.*;public class TestText extends JFrame{ public TestText(){ Container container = this.getContentPane(); JTextField jTextField1 = new JTextField("hello");

2021-10-04 18:19:54 49

原创 下拉框,列表框

1.下拉框package com.jia.lesson;import javax.swing.*;import java.awt.*;public class TestCombox01 extends JFrame { public TestCombox01() { Container container = this.getContentPane(); JComboBox ocb = new JComboBox(); ocb.ad

2021-10-04 18:11:00 51

原创 图片按钮,单选框,多选框

1.图片按钮package com.jia.lesson;import javax.swing.*;import java.awt.*;import java.net.URL;public class JButton01 extends JFrame { public JButton01() { //使用JFrame第一步new容器 Container container = this.getContentPane(); //将一

2021-10-04 17:48:48 61

原创 文本域,JScroll面板

package com.jia.lesson;import javax.swing.*;import java.awt.*;public class TestJPanel extends JFrame { public TestJPanel() { Container container = getContentPane(); //后面参数的意思是间距 container.setLayout(new GridLayout(2,1,10,1.

2021-10-04 17:09:12 36

原创 JPanel

package com.jia.lesson;import javax.swing.*;import java.awt.*;public class TestJPanel extends JFrame { public TestJPanel() { Container container = getContentPane(); //后面参数的意思是间距 container.setLayout(new GridLayout(2,1,10,1.

2021-10-04 17:08:26 177

原创 Icon,Imagelcon(图标)

1.文字图标package com.jia.lesson;import javax.swing.*;import java.awt.*;public class IconDemo extends JFrame implements Icon { private int width; private int height; public IconDemo() { } public IconDemo(int width, int height) {

2021-10-04 16:24:06 230

原创 JDialog弹窗

package com.jia.lesson;import javax.swing.*;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;//主窗口public class DialogDemo extends JFrame { public DialogDemo() { this.setVisible(true); th.

2021-10-04 10:57:37 73

原创 Swing之JFrame窗体

package com.jia.lesson;import javax.swing.*;import java.awt.*;public class JFrameDemo extends JFrame { //初始化 init(); public void init(){ //JFrame jFrame = new JFrame(); this.setBounds(100,100,300,300); this.setVisible.

2021-10-03 20:37:55 71

原创 键盘监听

package com.jia.lesson;import javafx.scene.input.KeyCode;import java.awt.*;import java.awt.event.KeyAdapter;import java.awt.event.KeyEvent;//键public class TestKeyListener { public static void main(String[] args) { KeyFrame keyFrame = .

2021-10-03 20:04:09 35

原创 窗口监听事件

package com.jia.lesson;import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class TestWindow { public static void main(String[] args) { new WindowFrame(); }}class WindowFrame extends Frame.

2021-10-03 19:44:18 48

原创 鼠标监听事件,模拟画图工具

package com.jia.lesson;import java.awt.*;import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.peer.MouseInfoPeer;import java.util.ArrayList;import java.util.Iterator;//鼠标监听事件pub.

2021-10-03 18:03:18 45

原创 画笔

package com.jia.lesson;import java.awt.*;public class TestPaint { public static void main(String[] args) { new MyPaint().loadFrame(); }}class MyPaint extends Frame { public void loadFrame() { setBounds(300, 300, 200, 20.

2021-10-03 14:59:40 41

原创 简易计算器,组合+内部类回顾复习

package com.jia.lesson;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;//简易计算器public class TestCalc { public static void main(Strin.

2021-10-03 13:06:53 66

原创 输入框事件监听

package com.jia.lesson;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class TestText01 { public static void main(String[] ar.

2021-10-02 20:44:05 68

原创 事件监听

package com.jia.lesson;import java.awt.*;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class TestActionEvent { public static void main(String.

2021-10-02 18:05:34 66

原创 GUI课堂作业

package com.jia.lesson;import java.awt.*;import static java.awt.Color.gray;public class Homework { public static void main(String[] args) { //大框架 Frame frame = new Frame(); frame.setBounds(200,200,300,300); ...

2021-10-01 15:23:22 90

原创 三种布局管理器

流式布局(FlowLayout)package com.jia.lesson;import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class TestFlowLayout { public static void main(String[] args) { Frame frame = new Frame(); /

2021-10-01 15:16:54 38

原创 Panel面板

package com.jia.lesson;import java.awt.*;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;public class TestPanel { public static void main(String[] args) { Frame frame = new Frame(); Panel panel = new Panel().

2021-10-01 11:00:16 112

原创 第一个Frame窗口

package com.jia.lesson;import java.awt.*;//GUI的第一个界面public class TestFrame { public static void main(String[] args) { //Frame Frame frame = new Frame("我的第一个JAVA图像界面窗口"); //需要设置可见性 frame.setVisible(true); //设置窗口大小 frame.setS.

2021-10-01 10:54:26 41

原创 JAVASE总结

卸载Java需要将这三个删除:

2021-10-01 10:47:52 46

原创 Error,Exception,Throwable

public class Application { public static void main(String[] args) { int a=1; int b=0; try { System.out.println(a/b);//Ctrl+Alt+t快捷键打开try...catch方法 } catch (Error e) { System.out.println("Error");.

2021-09-30 11:47:57 47

原创 内部类

package com.jia.test;public class Outer { private int i=0; public void out(){ System.out.println("这是一个外部类"); } public class Inner{ public void in(){ System.out.println("这是一个内部类"); } //获得外部类的私.

2021-09-30 10:56:59 24

原创 抽象类

package com.jia.test;//抽象类public abstract class Test09 { //抽象方法不存在方法体 public abstract void go(); }System.out.println("=======");import com.jia.test.Test09;public class Application extends Test09 { @Override //子类继承抽.

2021-09-29 13:03:36 26

空空如也

空空如也

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

TA关注的人

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