JAVA小游戲拼圖

第一步是創建項目 項目名自擬

第二部創建個包名 來規范class ?

然后是創建類 ?創建一個代碼類 和一個運行類?

代碼如下:

package heima;
?
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.Random;
?
import javax.swing.ImageIcon;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.border.BevelBorder;
?
public class GameJFrame ?extends JFrame implements KeyListener,ActionListener{
?? ?//GameJFrame這個界面表示的就是 游戲的主界面
?? ?//以后跟游戲相關的所有邏輯都寫在這個類中
?? ?
?? ?//創建一個二維數組
?? ?//目的:用來管理數據
?? ?//加載圖片的時候,會根據二維數組中的數據來進行加載
?? ?int[][] data =new int[4][4];
?? ?//記錄空白方塊在二維數組中的位置
?? ?int x=0;
?? ?int y=0;
?? ?//定義一個變量,記錄當前展示圖片的路徑
?? ?String path = "D:\\學習資料\\Java\\拼圖小游戲\\image\\animal\\animal1\\";
?? ?//定義一個二維數組 ?存儲一個正確的數據
?? ?int[][] win= {
?? ??? ??? ?{1,2,3,4},
?? ??? ??? ?{5,6,7,8},
?? ??? ??? ?{9,10,11,12},
?? ??? ??? ?{13,14,15,16},
?? ?};
?? ?//定義變量來統計部署
?? ?int step = 0 ;
?? ?
?? ? //創建項目下面的條目對象
?? ? JMenuItem replayItem =new JMenuItem("重新游戲");
?? ? JMenuItem reLoginItem =new JMenuItem("重新登錄");
?? ? JMenuItem closeItem =new JMenuItem("關閉游戲");
?? ??
?? ? JMenuItem accountItem =new JMenuItem("丁國俊的微信");
?? ?
?? ? public GameJFrame () {
?? ??? ? //初始化界面
?? ??? ? intiJFrame();
?? ??? ??
?? ??? ? //初始化菜單
?? ??? ? initJMenuBar();
?? ??? ??
?? ??? ? //初始化數據
?? ??? ? initData();
?? ??? ??
?? ??? ? //初始化圖片(根據打亂之后的結果去加載圖片)
?? ??? ? initImage();
?? ??? ??
?? ??? ??
?? ??? ??
?? ?//設置窗體可見 ?放到最后
?? ? this.setVisible(true);
}
?? ??
?? ? //初始化數據
?? ? private void initData() {
?? ??? ?//1.定義一個一維數組
?? ??? ? int[] tempArr= {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
?? ??? ?//2.打亂數組中的數據順序
?? ??? ? //遍歷數組中得到的每一個元素,拿到每一個元素跟隨索引上的數據進行交換
?? ??? ? Random r = new Random();
?? ??? ? for(int i =0 ;i<tempArr.length;i++) {
?? ??? ??? ? //獲取隨機索引
?? ??? ??? ? int index = r.nextInt(tempArr.length);
?? ??? ??? ? //拿到遍歷到每一個數據,跟隨機索引上的數據進行交換
?? ??? ??? ? int temp =tempArr[index];
?? ??? ??? ? tempArr[i] = tempArr[index];
?? ??? ??? ? tempArr[index] =temp;
?? ??? ? }
?? ??? ??
?? ??? ? //4.給二維數組添加數據
?? ??? ? //遍歷一維數組tempArr得到每一個元素, 把每一個元素依次添加到二維數組當中
?? ??? ? for(int i=0;i<tempArr.length;i++) {
?? ??? ??? ? if(tempArr[i]==0) {
?? ??? ??? ??? ? x=i/4;
?? ??? ??? ??? ? y=i%4;
?? ??? ??? ? }else {
?? ??? ??? ? data[i/4][i%4]=tempArr[i];
?? ??? ??? ? }
?? ??? ? }
?? ?}
?? ? //初始化圖片
?? ? //添加圖片的時候,就需要按照二維數組中管理的數據添加圖片
?? ?private void initImage() {
?? ??? ?//清空原本已經出現的所有圖片
?? ??? ?this.getContentPane().removeAll();
?? ??? ?
?? ??? ?if(victory()) {
?? ??? ??? ?//顯示勝利圖標
?? ??? ??? ?JLabel winJLabel = new JLabel(new ImageIcon("D:\\學習資料\\Java\\拼圖小游戲\\image\\win.png"));
?? ??? ??? ?winJLabel.setBounds(203,283,197,73);
?? ??? ??? ?this.getContentPane().add(winJLabel);
?? ??? ?}
?? ??? ?
?? ??? ?
?? ??? ?
?? ??? ?JLabel stepCount = new JLabel ("步數"+step);
?? ??? ?stepCount.setBounds(50,30,100,20);
?? ??? ?this.getContentPane().add(stepCount);
?? ??? ?
?? ??? ?
?? ??? ?
?? ??? ?//先加載的圖片在上方 ?后加載的圖片在下方
?? ??? ? //外循環---把內循環重復執行了4次
?? ??? ? for (int i = 0; i<4;i++) {
?? ??? ??? ? //內循環---表示一行添加了4張圖片
?? ??? ??? ? for (int j = 0; j<4;j++) {
?? ??? ? //獲取當前要加載圖片的序號
?? ??? ??? ?int num = ?data[i][j];
?? ??? ? //創建一個JLabel的對象(管理容器)
?? ??? ? JLabel jLabel =new JLabel(new ImageIcon(path+ num + ".jpg"));
?? ??? ? //指定圖片位置
?? ??? ? jLabel.setBounds(105*j+83,105*i+134,105,105);
?? ??? ? //給圖片添加邊框
?? ??? ? jLabel.setBorder(new BevelBorder(BevelBorder.LOWERED));//設置邊框凹下來
?? ??? ??
?? ??? ? //把管理容器添加到界面中
?? ??? ? this.getContentPane().add(jLabel);//取消默認的居中放置
?? ??? ??? ? }
?? ??? ? }
?? ??? ? JLabel background =new JLabel(new ImageIcon("D:\\學習資料\\Java\\拼圖小游戲\\image\\background.png"));
?? ??? ? background.setBounds(40,40,508,560);
?? ??? ? //將背景圖片添加到界面中
?? ??? ? this.getContentPane().add(background);
?? ??? ??
?? ??? ? //刷新一下界面
?? ??? ? this.getContentPane().repaint();
?? ??? ??
?? ?}
?? ?public void intiJFrame() {
?? ??? ??
?? ??? ?//GameJFrame這個界面表示的就是 游戲的主界面
?? ??? ??? ?//以后跟游戲相關的所有邏輯都寫在這個類
?? ??? ??? ? //設置界面的寬高
?? ??? ??? ? this.setSize(603,680);
?? ??? ??? ? //設置界面的標題
?? ??? ??? ? this.setTitle("拼圖單機版v1.8");
?? ??? ??? ? //設置界面置頂
?? ??? ??? ? this.setAlwaysOnTop(true);
?? ??? ??? ? //設置頁面居中
?? ??? ??? ? this.setLocationRelativeTo(null);
?? ??? ??? ? //設置關閉模式
?? ??? ??? ? this.setDefaultCloseOperation(3);
?? ??? ??? ??
?? ??? ??? ? //取消默認的居中放置 ?只有取消了才會按照xy的形式來添加組件
?? ??? ??? ? this.setLayout(null);
?? ??? ??? ? //給整個界面添加鍵盤監聽事件
?? ??? ??? ? this.addKeyListener(this );
?? ??? ??? ??
?? ? }?
?? ? public void initJMenuBar(){
?? ??? ?//初始化菜單
?? ??? ? JMenuBar jMenuBar =new JMenuBar();
?? ??? ??
?? ??? ? //常見菜單上的兩個選項的對象(功能 關于我們 )
?? ??? ? JMenu functionJMenu = new JMenu("功能");
?? ??? ? JMenu aboutJMenu = new JMenu("關于我們");
?? ??? ??
?? ??? ? //將每一個選項下面的條目放在選項當中
?? ??? ? functionJMenu.add(replayItem);
?? ??? ? functionJMenu.add(reLoginItem);
?? ??? ? functionJMenu.add(closeItem);
?? ??? ??
?? ??? ? aboutJMenu.add(accountItem);
?? ??? ??
?? ??? ? //給條目綁定時間
?? ??? ? replayItem.addActionListener(this);
?? ??? ? reLoginItem.addActionListener(this);
?? ??? ? closeItem.addActionListener(this);
?? ??? ? accountItem.addActionListener(this);
?? ??? ??
?? ??? ? //將菜單里的兩個選項添加到菜單當中去
?? ??? ? jMenuBar.add(functionJMenu);
?? ??? ? jMenuBar.add(aboutJMenu);
?? ??? ??
?? ??? ? //給整個界面設置菜單
?? ??? ? this.setJMenuBar(jMenuBar);
?? ??? ??
?? ??? ??
?? ??? ??
?? ? }
?
?? ?@Override
?? ?public void keyTyped(KeyEvent e) {
?? ??? ?// TODO Auto-generated method stub
?? ??? ?
?? ?}
?? ?
?? ?@Override
?? ?//按下不松時會調用這個方法
?? ?public void keyPressed(KeyEvent e) {
?? ??? ?// TODO Auto-generated method stub
?? ??? ?int code = e.getKeyCode();
?? ??? ?if(code==65) {
?? ??? ?//把界面所有的圖片刪除
?? ??? ?this.getContentPane().removeAll();
?? ??? ?//加載第一張完整的圖片
?? ??? ?JLabel all =new JLabel(new ImageIcon(path +"all.jpg"));
?? ??? ?all.setBounds(83,134,420,420);
?? ??? ? this.getContentPane().add(all);
?? ??? ?//加載背景圖片
?? ??? ?//添加背景圖片
?? ??? ? JLabel background =new JLabel(new ImageIcon("D:\\學習資料\\Java\\拼圖小游戲\\image\\background.png"));
?? ??? ? background.setBounds(40,40,508,560);
?? ??? ? //將背景圖片添加到界面中
?? ??? ? //把背景圖片添加到界面中
?? ??? ? this.getContentPane().add(background);
?? ??? ? //刷新界面
?? ??? ? this.getContentPane().repaint();
?? ??? ?}
?? ?}
?
?? ?@Override
?? ?public void keyReleased(KeyEvent e) {
?
?? ??? ?// TODO Auto-generated method stub
?? ??? ?//對 上,下,左,右進行判斷
?? ??? ??? ??? ?//左37 上38 右39 下40
?? ??? ??? ??? ?int code =e.getKeyCode();
?? ??? ??? ??? ?if(code ==37) {
?? ??? ??? ??? ??? ?System.out.println("向左移動");
?? ??? ??? ??? ??? ?if(y==3){
?? ??? ??? ??? ??? ??? ?return;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?data[x][y] =data[x][y+1];
?? ??? ??? ??? ??? ?data[x][y+1]=0;
?? ??? ??? ??? ??? ?y++;
?? ??? ??? ??? ??? ?//有一次移動,計步器自增一次
?? ??? ??? ??? ??? ?step++;
?? ??? ??? ??? ??? ?//調用方法按照最新的數字加載圖片
?? ??? ??? ??? ??? ?initImage();
?? ??? ??? ??? ?}else if(code ==38) {
?? ??? ??? ??? ??? ?System.out.println("向上移動");
?? ??? ??? ??? ??? ?//邏輯
?? ??? ??? ??? ??? ?//空白方框下方的數字往上移動
?? ??? ??? ??? ??? ?//x,y表示空白方塊?
?? ??? ??? ??? ??? ?//x+1,y表示空白方塊下方的數字
?? ??? ??? ??? ??? ?
?? ??? ??? ??? ??? ?//把空白方塊下方的數字賦值給空白方塊
?? ??? ??? ??? ??? ?if(x==3){
?? ??? ??? ??? ??? ??? ?return;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?data[x][y] =data[x+1][y];
?? ??? ??? ??? ??? ?data[x+1][y]=0;
?? ??? ??? ??? ??? ?x++;
?? ??? ??? ??? ??? ?//有一次移動,計步器自增一次
?? ??? ??? ??? ??? ?step++;
?? ??? ??? ??? ??? ?//調用方法按照最新的數字加載圖片
?? ??? ??? ??? ??? ?initImage();
?? ??? ??? ??? ?}else if(code ==39) {
?? ??? ??? ??? ??? ?System.out.println("向右移動");
?? ??? ??? ??? ??? ?if(y==0){
?? ??? ??? ??? ??? ??? ?return;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?data[x][y] =data[x][y-1];
?? ??? ??? ??? ??? ?data[x][y-1]=0;
?? ??? ??? ??? ??? ?y--;
?? ??? ??? ??? ??? ?//有一次移動,計步器自增一次
?? ??? ??? ??? ??? ?step++;
?? ??? ??? ??? ?}else if(code ==40) {
?? ??? ??? ??? ??? ?System.out.println("向下移動");
?? ??? ??? ??? ??? ?if(x==0){
?? ??? ??? ??? ??? ??? ?return;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ?data[x][y] =data[x-1][y];
?? ??? ??? ??? ??? ?data[x-1][y]=0;
?? ??? ??? ??? ??? ?x--;
?? ??? ??? ??? ??? ?//有一次移動,計步器自增一次
?? ??? ??? ??? ??? ?step++;
?? ??? ??? ??? ??? ?//調用方法按照最新的數字加載圖片
?? ??? ??? ??? ??? ?initImage();
?? ??? ??? ??? ?}else if(code ==65){
?? ??? ??? ??? ??? ?initImage();
?? ??? ??? ??? ?}else if(code ==87) {
?? ??? ??? ??? ??? ?data =new int[][] {
?? ??? ??? ??? ??? ??? ?{1,2,3,4},
?? ??? ??? ??? ??? ??? ?{5,6,7,8},
?? ??? ??? ??? ??? ??? ?{9,10,11,12},
?? ??? ??? ??? ??? ??? ?{13,14,15,16}
?? ??? ??? ??? ??? ?};
?? ??? ??? ??? ??? ?initImage();
?? ??? ??? ??? ?}
?? ?}
?? ?//判斷data數組中的數據是否跟win數組中的i昂同
?? ?//如果全部相同返回true,否則返false
?? ?public boolean victory() {
?? ??? ?for( int i=0;i<data.length;i++) {
?? ??? ??? ?//i:依次表示二維數組中的data里面的索引
?? ??? ??? ?//data[i]:依次表示每一個一維數組
?? ??? ??? ?for(int j=0;j<data[i].length;j++) {
?? ??? ??? ??? ?if(data[i][j] !=win[i][j]) {
?? ??? ??? ??? ??? ?//只要有一個數據不一樣則返回false
?? ??? ??? ??? ??? ?return false;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?}
?? ??? ?//循環結束表示數組遍歷比較完畢 ?,全部一樣的話返回true
?? ??? ?return false;
?? ??? ?
?? ?}
?? ?public void ?actionPerformed(ActionEvent e) {
?? ??? ?//獲取當前被點擊的條目對象
?? ??? ?Object obj =e.getSource();
?? ??? ?//判斷
?? ??? ?if(obj ==replayItem) {
?? ??? ??? ?System.out.println("重新游戲");
?? ??? ??? ?
?? ??? ??? ?//計步器清零
?? ??? ??? ?step = 0;
?? ??? ??? ?
?? ??? ??? ?//再次打亂二維數組
?? ??? ??? ?initData();
?? ??? ??? ?
?? ??? ??? ?//重新加載圖片
?? ??? ??? ?initImage();
?? ??? ?}else if(obj == reLoginItem) {
?? ??? ??? ?System.out.println("重新登錄");
?? ??? ??? ?this.setVisible(false);
?? ??? ??? ?//打開登入界面
?? ??? ??? ?new LoginJFrame();
?? ??? ?}else if(obj == closeItem) {
?? ??? ??? ?System.out.println("關閉游戲");
?? ??? ??? ?//直接關閉游戲
?? ??? ??? ?System.exit(0);
?? ??? ?}else if(obj == accountItem) {
?? ??? ??? ?System.out.println("丁國俊的微信");
?? ??? ??? ?JDialog jDialog=new JDialog();
?? ??? ??? ?//創建一個管理圖片的容器對象jDialog
?? ??? ??? ?JLabel jLabel = new JLabel(new ImageIcon("D:\\學習資料\\Java\\拼圖小游戲\\image\\微信圖片_20231119183326.jpg")) ;
?? ??? ??? ?//設置位置和寬高
?? ??? ??? ?jLabel.setBounds(0,0,258,258);
?? ??? ??? ?//把圖片添加到彈框中
?? ??? ??? ?jDialog.getContentPane().add(jLabel);
?? ??? ??? ?//設置彈框大小
?? ??? ??? ?jDialog.setSize(344,344);
?? ??? ??? ?//讓彈框置頂
?? ??? ??? ?jDialog.setAlwaysOnTop(true);
?? ??? ??? ?//讓彈框劇中
?? ??? ??? ?jDialog.setLocationRelativeTo(null);
?? ??? ??? ?//彈框不關閉則無法操作下面的界面
?? ??? ??? ?jDialog.setModal(true);
?? ??? ??? ?//讓彈框顯示出來
?? ??? ??? ?jDialog.setVisible(true);
?? ??? ?}
?? ?}
}

測試類如下:

package heima;
?
public class App {
?? ?public static void main(String[]args) {
?? ??? ?//表示程序的啟動入口
?? ??? ?//如果我們想要開啟一個界面,就創建誰的對象就可以了
?? ??? ?new GameJFrame();//調用游戲主界面窗體
?? ??? ?//new RegisterJFrame();//注冊界面
?? ??? ?//new LoginJFrame();//登入界面
?? ?}
}
運行結果如下:

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/160612.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/160612.shtml
英文地址,請注明出處:http://en.pswp.cn/news/160612.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

10、信息打點——APP小程序篇抓包封包XP框架反編譯資產提取

APP信息搜集思路 外在——抓包封包——資產安全測試 抓包&#xff08;Fiddle&茶杯&burp&#xff09;封包&#xff08;封包監聽工具&#xff09;&#xff0c;提取資源信息 資產收集——資源提取——ICO、MAD、hash——FOFA等網絡測繪進行資產搜集 外在——功能邏輯 內在…

國際版Amazon Lightsail的功能解析

Amazon Lightsail是一項易于使用的云服務,可為您提供部署應用程序或網站所需的一切,從而實現經濟高效且易于理解的月度計劃。它是部署簡單的工作負載、網站或開始使用亞馬遜云科技的理想選擇。 作為 AWS 免費套餐的一部分&#xff0c;可以免費開始使用 Amazon Lightsail。注冊…

【Python進階】近200頁md文檔14大體系第4篇:Python進程使用詳解(圖文演示)

本文從14大模塊展示了python高級用的應用。分別有Linux命令&#xff0c;多任務編程、網絡編程、Http協議和靜態Web編程、htmlcss、JavaScript、jQuery、MySql數據庫的各種用法、python的閉包和裝飾器、mini-web框架、正則表達式等相關文章的詳細講述。 Python全套筆記直接地址…

PostgreSQL10安裝postgis插件

1.安裝pgsql10 2.下載插件&#xff0c;以Windows為例&#xff0c;地址&#xff1a;Index of /postgis/windows/pg10/ 3.安裝插件&#xff0c;直接安裝&#xff0c;和pgsql的目錄相同即可&#xff0c;一直下一步 4.安裝之后&#xff0c;需要執行sql打開 CREATE EXTENSION po…

028 - STM32學習筆記 - ADC結構體學習(二)

028 - STM32學習筆記 - 結構體學習&#xff08;二&#xff09; 上節對ADC基礎知識進行了學習&#xff0c;這節在了解一下ADC相關的結構體。 一、ADC初始化結構體 在標準庫函數中基本上對于外設都有一個初始化結構體xx_InitTypeDef&#xff08;其中xx為外設名&#xff0c;例如…

Redis設計與實現-數據結構(建設進度17%)

Redis數據結構 引言數據結構stringSDS數據結構原生string的不足 hash 本博客基于《Redis設計與實現》進行整理和補充&#xff0c;該書依賴于Redis 3.0版本&#xff0c;但是Redis6.0版本在一些底層實現上仍然沒有明顯的變動&#xff0c;因此本文將在該書的基礎上&#xff0c;對于…

PostgreSQL基本操作

1.查詢某個表的所在磁盤大小 select pg_size_pretty(pg_relation_size(grb_grid)); 2.插入point類型的記錄 insert into tb_person ("name", "address", "location", "create_time", "area", "girls") values …

Java 兩個線程交替打印1-100

線程題&#xff1a;交替打印1-100 這里演示兩個線程&#xff0c;一個打印奇數&#xff0c;一個打印偶數 方式一&#xff1a;synchronized FixedThreadPool public class example {private static int count 1;private static final Object lock new Object();public stat…

WPF基礎DataGrid控件

WPF DataGrid 是一個用于顯示和編輯表格數據的強大控件。它提供了豐富的功能&#xff0c;包括排序、篩選、分組、編輯、選擇等&#xff0c;使你能夠以類似電子表格的方式呈現和操作數據。 DataGrid 的布局主要由以下部分組成&#xff1a; 列定義 (Columns): DataGrid 列定義了…

YOLO目標檢測——衛星遙感多類別檢測數據集下載分享【含對應voc、coco和yolo三種格式標簽】

實際項目應用&#xff1a;衛星遙感目標檢測數據集說明&#xff1a;衛星遙感多類別檢測數據集&#xff0c;真實場景的高質量圖片數據&#xff0c;數據場景豐富&#xff0c;含網球場、棒球場、籃球場、田徑場、儲罐、車輛、橋、飛機、船等類別標簽說明&#xff1a;使用lableimg標…

2023年【上海市安全員C證】考試及上海市安全員C證找解析

題庫來源&#xff1a;安全生產模擬考試一點通公眾號小程序 2023年上海市安全員C證考試為正在備考上海市安全員C證操作證的學員準備的理論考試專題&#xff0c;每個月更新的上海市安全員C證找解析祝您順利通過上海市安全員C證考試。 1、【多選題】2017年9月頒發的《中共上海市委…

基于STM32的煙霧濃度檢測報警仿真設計(仿真+程序+講解視頻)

這里寫目錄標題 &#x1f4d1;1.主要功能&#x1f4d1;2.仿真&#x1f4d1;3. 程序&#x1f4d1;4. 資料清單&下載鏈接&#x1f4d1;[資料下載鏈接](https://docs.qq.com/doc/DS0VHTmxmUHBtVGVP) 基于STM32的煙霧濃度檢測報警仿真設計(仿真程序講解&#xff09; 仿真圖prot…

【數據結構】B : DS圖應用--最短路徑

B : DS圖應用–最短路徑 文章目錄 B : DS圖應用--最短路徑DescriptionInputOutputSampleInput Output 解題思路&#xff1a;初始化主循環心得&#xff1a; AC代碼 Description 給出一個圖的鄰接矩陣&#xff0c;再給出指定頂點v0&#xff0c;求頂點v0到其他頂點的最短路徑 In…

SkyWalking配置報警推送到企業微信

1、先在企業微信群里創建一個機器人&#xff0c;復制webhook的地址&#xff1a; 2、找到SkyWalking部署位置的alarm-settings.yml文件 編輯&#xff0c;在最后面加上此段配置 &#xff01;&#xff01;&#xff01;一定格式要對&#xff0c;不然一直報警報不出來按照網上指導…

JVM 堆外內存詳解

Java 進程內存占用除了JVM 運行時數據區&#xff0c;還有直接內存&#xff08;Direct Memory&#xff09;區域及 JVM 程序自身也會占用內存 直接內存&#xff08;Direct Memory&#xff09;區域&#xff1a;直接內存通過使用Native堆外內存來存儲數據&#xff0c;這意味著數據…

大數據平臺實踐之CDH6.2.1+spark3.3.0+kyuubi-1.6.0

前言&#xff1a;關于kyuubi的原理和功能這里不做詳細的介紹&#xff0c;感興趣的同學可以直通官網&#xff1a;https://kyuubi.readthedocs.io/en/v1.7.1-rc0/index.html 下載軟件版本 wget http://distfiles.macports.org/scala2.12/scala-2.12.16.tgz wget https://archi…

pikachu_php反序列化

pikachu_php反序列化 源代碼 class S{var $test "pikachu";function __construct(){echo $this->test;} }//O:1:"S":1:{s:4:"test";s:29:"<script>alert(xss)</script>";} $html; if(isset($_POST[o])){$s $_POST[…

基于python人臉性別年齡檢測系統-深度學習項目

歡迎大家點贊、收藏、關注、評論啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代碼。 文章目錄 一項目簡介簡介技術組成1. OpenCV2. Dlib3. TensorFlow 和 Keras 功能流程 二、功能三、系統四. 總結 一項目簡介 # Python 人臉性別年齡檢測系統介紹 簡介 該系統基…

用idea搭建一個spring cloud微服務項目

以下是使用 IntelliJ IDEA 搭建 Spring Cloud 微服務項目的步驟&#xff1a; 創建一個新的 Maven 項目。 在 pom.xml 文件中添加以下依賴&#xff1a; <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-…

Android studio 遷移之后打開沒反應

把Android studio由d盤遷移到c盤&#xff0c;點擊沒反應&#xff1b; 需要把C:\Users\xxxx\AppData\Roaming\Google\AndroidStudio2022.3 目錄下的studio64.exe.vmoptions 修改為C:&#xff0c;刪除該文件會導致無法安裝app。 里面配置了一個