導航:首頁 > 編程語言 > java8defaultthis

java8defaultthis

發布時間:2025-08-13 15:30:46

1. java代碼的列印信息控制項怎麼做或者有現成的代碼也行。

一: 首先理清業務邏輯

兩個窗口, 第一個主窗口, 是用於填寫信息的, 點擊按鈕後,跳轉到第二個窗口,.

第二個對話框窗口 ,用於顯示需要列印的信息, 以及列印到文檔


二: 確定需要的技術, java圖像界面主要使用awt和swing

swing裡面的控制項比較豐富, 且功能強大 .


三: 效果圖片

importjava.awt.*;
importjava.awt.event.*;
importjava.io.*;
importjavax.swing.*;
//定義一個主窗口類
{
publicstaticfinalStringFILE_PATH="c:\print.txt";//常量,用於指定信息的保存路徑
//定義主要的組件
privatefinalJTextFieldjtf1,jtf2,jtf3;
privatefinalJCheckBoxjcb1,jcb2,jcb3;
privatefinalJRadioButtonjrb1,jrb2;

publicMainFrame(){
setTitle("信息提交窗口");//設置窗口標題
setSize(350,320);//設置窗口大小
setLocationRelativeTo(null);//讓窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//當主窗口關閉的時候退出jvm虛擬機
JPaneljp=newJPanel(newGridLayout(5,1,2,1));//定義主顯示面板,布局為表格布局5行1列,水平間距2,垂直間距1

JPaneljp1=newJPanel();//第一行的組件面板
JLabeljl1=newJLabel("姓名");
jtf1=newJTextField(10);
jp1.add(jl1);
jp1.add(jtf1);

JPaneljp2=newJPanel();//第二行的組件面板
JLabeljl2=newJLabel("學號");
jtf2=newJTextField(10);
jp2.add(jl2);
jp2.add(jtf2);

JPaneljp3=newJPanel();//第三行的組件面板
JLabeljl3=newJLabel("性別");
jrb1=newJRadioButton("男");
jrb2=newJRadioButton("女");
jrb1.setSelected(true);
ButtonGroupbgs=newButtonGroup();
bgs.add(jrb1);
bgs.add(jrb2);
jp3.add(jl3);
jp3.add(jrb1);
jp3.add(jrb2);

JPaneljp4=newJPanel();//第四行的組件面板
JLabeljl4=newJLabel("選擇愛好");
jcb1=newJCheckBox("游泳");
jcb2=newJCheckBox("籃球");
jcb3=newJCheckBox("跑步");
jp4.add(jl4);
jp4.add(jcb1);
jp4.add(jcb2);
jp4.add(jcb3);

JPaneljp5=newJPanel();//第五行的組件面板
JLabeljl5=newJLabel("自我介紹");
jtf3=newJTextField(22);
jp5.add(jl5);
jp5.add(jtf3);

//添加到主顯示面板
jp.add(jp1);
jp.add(jp2);
jp.add(jp3);
jp.add(jp4);
jp.add(jp5);
jp.setBorder(BorderFactory.createTitledBorder("填寫資料"));//設置主顯示面板的邊框

JButtonjb=newJButton("跳轉到列印頁");
jb.addActionListener(newActionListener(){//按鈕事件

publicvoidactionPerformed(ActionEvente){//獲取組件的信息
StringBuildersb=newStringBuilder();//用於連接信息
Stringname=jtf1.getText();
sb.append("姓名:"+name+" ");
Stringnum=jtf2.getText();
sb.append("學號:"+num+" ");
Stringsex;
if(jrb1.isSelected()){
sex="男";
}else{
sex="女";
}
sb.append("性別:"+sex+" ");
Stringaihao="";
if(jcb1.isSelected()){
aihao+=jcb1.getText();
}
if(jcb2.isSelected()){
aihao+=""+jcb2.getText();
}
if(jcb3.isSelected()){
aihao+=""+jcb3.getText();
}
sb.append("愛好:"+aihao+" ");
Stringjieshao=jtf3.getText();
sb.append("自我介紹:"+jieshao+" ");
newPrintDailog(sb.toString(),FILE_PATH).setVisible(true);//打開列印頁面,並設置為可見
}
});

getContentPane().add(newJLabel("信息填寫",JLabel.CENTER),BorderLayout.NORTH);
getContentPane().add(jp);
getContentPane().add(jb,BorderLayout.SOUTH);
}

publicstaticvoidmain(String[]args){
newMainFrame().setVisible(true);
}
}

//定義一個對話框窗口類
{
Stringinfo;//用於接受信息
StringfilePath;//文檔的路徑
privatefinalJLabeljl2;
publicPrintDailog(Stringinfo,finalStringfilePath){
this.info=info;
this.filePath=filePath;
setModal(true);//模態為真,如果不關閉這個對話框,那麼無法點擊其他窗口
setTitle("信息列印頁");//設置列印窗口的標題
setSize(300,320);//設置列印窗口的大小
setLocationRelativeTo(null);//設置列印窗口居中
setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);//當點擊關閉按鈕時,該窗口銷毀
JLabeljl1=newJLabel("信息列印顯示",JLabel.CENTER);
JTextAreajta=newJTextArea(info);
jta.setEditable(false);//不可編輯
jta.setLineWrap(true);//自動換行
JScrollPanejsp=newJScrollPane(jta);
jsp.setBorder(BorderFactory.createTitledBorder("信息"));

JButtonjb1=newJButton("列印");
JPaneljp=newJPanel(newGridLayout(2,1));
JPaneljp1=newJPanel();
jp1.add(jb1);

JPaneljp2=newJPanel();
jl2=newJLabel();
jp2.add(jl2);

jp.add(jp1);
jp.add(jp2);
add(jl1,BorderLayout.NORTH);
add(jsp);
add(jp,BorderLayout.SOUTH);

jb1.addActionListener(newActionListener(){//點擊列印的按鈕的事件
publicvoidactionPerformed(ActionEvente){
saveToFile();//信息列印到了文檔
jl2.setText("信息已經列印到"+filePath);//顯示出來
jl2.setForeground(Color.RED);//為了醒目設置顏色為紅色
}
});

}

privatevoidsaveToFile(){//該方法用於保存信息到文檔
try{
BufferedWriterbw=newBufferedWriter(newOutputStreamWriter(newFileOutputStream(filePath),"UTF-8"));
bw.write(info);
bw.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}


五: 拓展

java 製作圖像界面比較簡單, 只需要熟練的掌握三大布局(流布局 表格布局 邊界布局)和常用組件 , 就能製作出比較復雜的界面 . 所以理清業務邏輯, 才是重點

2. 有沒有較完整的Java中的關鍵字及其含義

java關鍵字
概述
關鍵字是電腦語言里事先定義的,有特別意義的標識符,有時又叫保留字,還有特別意義的變數。 Java的關鍵字對java的編譯器有特殊的意義,他們用來表示一種數據類型,或者表示程序的結構等,關鍵字不能用作變數名、方法名、類名、包名。 一個Java語言中的關鍵字,用在類的聲明中來指明一個類是不能被實例化的,但是可以被其它類繼承。一個抽象類可以使用抽象方法,抽象方法不需要實現,但是需要在子類中被實現。
break
一個Java的關鍵字,用來改變程序執行流程,立刻從當前語句的下一句開始執行。如果後面跟有一個標簽,則從標簽對應的地方開始執行。用來中斷程序的執行,一般用在循環語句中,用來跳出本層循環,轉去執行下面的程序。
case
Java語言的關鍵字,用來定義一組分支選擇,如果某個值和switch中給出的值一樣,就會從該分支開始執行。
catch
Java的一個關鍵字,用旦芹來聲明當try語句塊中發生運行時錯誤或非運行時異常時運行的一個塊。
char
Java語言的一個關鍵字,用來定義一個字元類型。
int
Java語言的一個關鍵字,用來定義一個整型類型數據或變數。
for
Java語言的一個關鍵字,是循環結構中經常使用的一個關鍵字,其形式為: for(表達式1;表達式2;表達式3) { } 其中表達式1用於給相應的變數賦值,表達式2是條件判斷語句,表達式3循環控制語句。
if
Java語言的一個關鍵字,是用來判斷條件用的。 abstract boolean break byte case
catch char class continue default
do double else enum extends
final finally float for if
implements import instanceof int interface
long native new package private
protected public return strictfp short
static super switch synchronized this
throw throws transient try void
volatile while

編輯本段詳細介紹
類和介面
abstract標記為抽象或包含在抽象類中的成員必須通過從抽象類派生的類來實現。 class類, 格式為: class類名 extends 父類名稱{ 屬性聲明及初始化;方法聲明及方法體; } implements實現 import導入 interface介面。 格式為: interface 介面名 [extends 父介面列表]{ [public][static][final]屬性類型屬性名=常量值; [public][abstract]返回值類型方法名(參數列表); } package打包,聲明僅僅指定了文件中所定義的類屬於哪一個包。 static靜態屬性,用來描述一個類下所有對象共享的屬性。 throws扔,一個方法中發生異常但沒有捕獲,在方法頭聲明,由方法調用者處理。//throw後不允許有其他的語句。 void空
數據類型
boolean 值只能是true和false,而不能用0和1代替,並且一定要小寫。 byte位元組型 char字元型 double雙精度浮點型 float單精度浮點型 int整型 long長整型 short短整型
流程式控制制
break中斷switch語句的執行拆瞎,在循環語句中,同樣也是結束循環語句的執行。 continue 只跳出本次循環,還要繼續執行下一次的循環。break完全跳出所在或者是所標記的循環。 do 和while連用, 格式為: do{ 循環體; }while(循環條件旅遲空);//不要忘記分號; for 格式為: for(表達式1;表達式2;表達式3){ 循環體;} final如果不希望某個類被其他的類繼承,在這種情況下需要使用修飾符final來說明一個類是終極的,不能夠做父類。 if 格式為: if(條件表達式) {功能代碼塊1} else {功能代碼塊}//條件表達式返回值為真,則執行功能塊,否則執行else功能塊。 return switch 格式為: switch(表達式){ case 值1: 功能代碼1; [break;] case 值2: 功能代碼2; [break;]; …… case 值n: 功能代碼n; [break;] default:功能代碼others;} while 格式為: while(循環條件) {循環體;}
訪問范圍
private 私有地,Private 語句 在模塊級別中使用,用於聲明私有變數及分配存儲空間。 默認訪問控制(package ),如果在成員變數和方法前不加任何訪問許可權修飾符,則稱為默認訪問控制,也稱為包訪問控制。這意味著同一包內的其他所有類都能訪問該成員,但對包外的所有類就不能訪問。 protected 表明被它修飾的成員變數為保護類型,在同一個包里和 public 類型是一樣的,也是能夠訪問到的。但是如果在不同包里的 protected 類型的成員變數就只能通過子類來訪問,這個修飾符是區別於其他的修飾符的。 public 公共的,他表示某個變數或者函數是全局函數,例如:public int a 表示a這個整型變數是全局變數。
類的實例
new 該子句創建一個新的對象實例。New 子句必須指定一個可以用來創建實例的已定義類。可以在聲明語句或賦值語句中使用 New。執行該語句時,它將調用指定類的構造函數,傳遞提供的所有參數。 this引用屬性,當方法中的參數和某個屬性有相同的名字時,這是局部變數優先,屬性被隱藏。然而,有時為了能夠在方法中以用隱藏的屬性,就可以用this區分,由this引用的就是屬性,沒有this引用的則是局部變數或者是參數。 super被繼承的類稱為超類,繼承的類稱為子類。
其它
1、catch捕獲錯誤的語句。 2、finally為了完成執行的代碼而設計的,主要是為了程序的健壯性和完整性,無論有沒有異常發生都執行代碼。 3、native是方法修飾符。Native方法是由另外一種語言(如c/c++,FORTRAN,匯編)實現的本地方法。因為在外部實現了方法,所以在java代碼中,就不需要聲明了,有點類似於介面方法。Native可以和其他一些修飾符連用,但是abstract方法和Interface方法不能用native來修飾。 4、strictfp 修飾類和方法,意思是FP-strict,精確浮點,符合IEEE-754規范的。當一個class或interface用strictfp聲明,內部所有的float和double表達式都會成為strictfp的。Interface method不能被聲明為strictfp的,class的可以。 5、try 當try子句中的某行代碼發生異常,會終止程序的運行,跳轉到catch子句來執行。 6、transient 變數修飾符。標記為transient的變數,在對象存儲時,這些變數狀態不會被持久化。當對象序列化的保存在存儲器上時,不希望有些欄位數據被保存,為了保證安全性,可以把這些欄位聲明為transient。 7、volatile volatile修飾變數。在每次被線程訪問時,都強迫從共享內存中重讀該成員變數的值。而且,當成員變數發生變化時,強迫線程將變化值回寫到共享內存。這樣在任何時刻,兩個不同的線程總是看到某個成員變數的同一個值。 8、goto java中關鍵字表中雖然沒有goto關鍵字但是在聲明變數時是不可以使用該單詞的因為goto 是 Java 中一個沒有使用的關鍵字,如果想叫做保留字也可以。 一般結構化程序,都不需要使用 Goto 語句的,在有分支和循環以及遞歸調用之後,goto 完全可以不使用了。為了程序代碼更簡捷,對於循環結構,還有 break 和 continue 用於跳轉。而且,break 和 continue 都可以帶標簽,更增加了它們的靈活性。

閱讀全文

與java8defaultthis相關的資料

熱點內容
明白演算法機制 瀏覽:239
雲伺服器8核32g 瀏覽:42
linuxcp命令覆蓋 瀏覽:254
ping命令的使用技巧 瀏覽:741
李炎恢php視頻教程第三季 瀏覽:677
南瑞的伺服器什麼牌子 瀏覽:967
java8defaultthis 瀏覽:839
android底部菜單凸起 瀏覽:429
麥克米倫pdf 瀏覽:487
移動雲伺服器自動續費 瀏覽:182
南京電子文檔加密軟體公司 瀏覽:49
貪心演算法能解決最優化問題 瀏覽:258
用微信掃哪個app收款 瀏覽:415
三元函數的遺傳演算法 瀏覽:447
查看命令區域網 瀏覽:393
怪獸聽從命令 瀏覽:769
伺服器如何看硬碟佔用 瀏覽:920
t3工況壓縮機 瀏覽:281
控制台命令大全 瀏覽:782
編譯原理中浮點數的正則文法 瀏覽:589