Java筆記1

WhaleFall_wjl發表於2020-10-31

通過視覺化介面認識類與物件
前言:學過C++,現在開始學Java。剛開始學,把學習筆記寫在這裡,我應該會時不時的寫一寫我認為Java和C++不一樣的地方。這裡所有的內容都是我自己的理解所以不能保證正確性。
一、視覺化介面(這只是我自己暫時的叫法)
我們執行Java程式時輸入輸出都是在程式下方的框內,這裡“視覺化介面”實際上就是程式執行時彈出一個介面,然後介面上有一些內容可以進行互動資訊和接受命令,就是包含一些輸入框、按鈕等的介面,比直接在程式下方的框中美觀清晰方便,以實現一個如下圖所示的簡化QQ登入介面為例。
![在這裡插入圖片描述]

二、建立視覺化介面,進行簡單的操作
Java是物件導向的語言,這樣的視覺化當然離不開類和物件。Java中為我們提供了這樣的類,放在不同的包(package)中,我們只需呼叫即可。
1.接下來所需要的類和所在包
1).元件:就是我們所要顯示在螢幕上的所有的東西。
a.容器元件:裝納其他元件使用。
頂級容器元件(窗體):介面,所有其他的元件,必須新增在頂級容器元件上,才能顯示。【窗體 JFrame】
b.元素元件:提供和使用者互動功能, 輸入(輸入框、按鈕)、輸出(顯示文字、顯示圖片)等。
【文字輸入框 JTextField
密碼輸入框 JPasswordField
標籤 JLabel(輸出圖片和文字)
核取方塊 JCheckBox
按鈕 JButton
圖片 javax.swing.ImageIcon】

2)佈局:設定控制組建在介面的擺放規則。
流式佈局:將元件從左到右依次擺放,一行擺放不下下一個元件,則自動換行。
【流式佈局 java.awt.FlowLayout
尺寸 java.awt.Dimension】
***具體內容或需要其他設計可以在Java API中查詢其他包。
2.設計步驟
第一步:建立一個登入介面類,定義顯示介面的方法。
第二步:建立窗體的物件,設定窗體的屬性和佈局。
第三步:建立各個元件的物件,設定元件的屬性,新增到窗體上。
第四步:設定窗體可見。
第五步:在主方法中,建立登入介面的物件,呼叫顯示介面的方法。
3.程式碼

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JButton;

import java.awt.Dimension;
import java.awt.FlowLayout;
import javax.swing.JTextField;
import javax.swing.JPasswordField;
import javax.swing.JCheckBox;
public class LoginUI
{
	//顯示介面方法
	public void showUI()
	{
		//建立窗體物件
		JFrame loginFrame=new JFrame();
		
		//設定窗體屬性
		loginFrame.setSize(550,550);
		
		//設定窗體佈局
		FlowLayout layout=new FlowLayout();
		loginFrame.setLayout(layout);
		
		//建立圖片物件
		ImageIcon icon=new ImageIcon("C:\\Users\\Administrator\\Desktop\\QQ截面圖.png");
		//建立顯示圖片的標籤
		JLabel iconLabel=new JLabel(icon);
		
		//建立輸入框物件
		JTextField nameInput=new JTextField();
		JPasswordField passWordinput=new JPasswordField();

		nameInput.setText("賬號");
		passWordinput.setText("密碼");
		//通過Dimension物件設定輸入框大小
		Dimension inputsize=new Dimension(350,35);
		nameInput.setPreferredSize(inputsize);
		passWordinput.setPreferredSize(inputsize);
		
		
		//建立標籤物件
		JLabel registerLabel= new JLabel("註冊賬號");
		JLabel	findPassword=new JLabel("找回密碼");
		//建立核取方塊物件
		JCheckBox zidong=new JCheckBox("自動登入");
		JCheckBox rememberPass=new JCheckBox("記住密碼");
		//建立按鈕物件
		JButton MLogin=new JButton("登入");
		
		//設定標籤,核取方塊,按鈕大小
		Dimension Labelsize1=new Dimension(150,35);
		Dimension LabelSIze3=new Dimension(400,40);
		
		registerLabel.setPreferredSize(Labelsize1);
		findPassword.setPreferredSize(Labelsize1);
		
		rememberPass.setPreferredSize(Labelsize1);
		zidong.setPreferredSize(Labelsize1);
		
		MLogin.setPreferredSize(LabelSIze3);
		
		//將所有元件新增到窗體上
		loginFrame.add(iconLabel);
		loginFrame.add(nameInput);
		loginFrame.add(registerLabel);
		loginFrame.add(passWordinput);
		loginFrame.add(findPassword);
		loginFrame.add(rememberPass);
		loginFrame.add(zidong);
		loginFrame.add(MLogin);
		
		//設定窗體可見
		loginFrame.setVisible(true);
	}
	public static void main(String[] args)
	{
		//建立介面物件
		LoginUI ui=new LoginUI();
		//顯示介面
		ui.showUI();
	}
}

執行結果就是顯示出上面那樣一個簡單的介面。
三、小結
實現上面這個過程並不是很難,只要簡單瞭解需要的包的方法的使用即可。實現這個過程主要是為了熟悉類和物件以及Java編碼。

相關文章