A. java課程設計結束了,老師要我們寫心得體會,好心人幫我寫一份吧
在前期准備過程中,先策劃好自己的網站及相關的各個網頁所要表達的內容,主要實現哪些功能,如用戶登錄,商品查找,這些功能是由什麼樣的jsp或javabean實現的,在編寫好這些功能後,又是怎麼樣在各個頁面html中插入這些實現功能的代碼,是用腳本呢還是用調用,這些都是我們事先要考慮的問題,只有這樣我們考慮周到了,明白了,才能順利實現更多的功能,達到事半功倍的效果。再一個主要任務是在網上搜集有關的信息和圖片,並參考借鑒別人的網站布局和功能,來規劃美化自己的網頁頁面的設置風格。
在此次課程設計中,我主要負責商品信息查詢部分功能的實現和商品公告欄包括商城公告,銷量排行,友情鏈接等功能的實現,這些功能都是有鏈接的,有的連接到本網站有關內容,有的是連接到以外的網站。在頁面布局中,並沒有遇到什麼困難,主要是合理正確利用網頁製作標記,實現准確定位。遇到的困難主要集中在頁面的具體在瀏覽器的顯示上,在一個頁面中,實現一小部分的動態轉換,另一部分靜態的要在每一個網頁中都要顯示。這其中,不僅要准確利用網頁的框架布置外,還要充分考慮到用代碼實現另外的頁面或窗口的布局和美化。在編寫代碼過程中,要充分考慮其他頁面的有關情況,jsp有關功能的封裝和轉換,頁面的交換,以及有關頁麵包含的所能實現具體功能的jsp代碼等。
在編寫實現功能的代碼中,遇到困難是最多的了。點擊商城公告裡面的內容時,能彈出來一個詳細信息的界面,這個界面就是需要在頁面中插入jsp腳本,比如html語句<a href="#" onClick="javasrcipt:history.go(-1)"><img src="img/back.gif"></a>,腳本<%AfficheBean affiche=(AfficheBean)request.getAttribute("affiche");%>實現具體的功能,顯示網頁內容和有關信息。這之間的調用順序和轉換需要准確的定位,才能實現想要的功能。在商品查詢頁面里,包括電子產品,健康產品,家用電器,衣帽服飾等查詢功能,下面還有具體的詳細信息,包括是否加入購物車。顯示有些商品內容只是簡單地網頁html語句實現的,但是如果要進行有關查詢時,需要代用有關jsp。我們可以看到,只要點擊就可以顯示你所想要的頁面。在這個功能實現中,由文字被點擊時,調用有關jsp功能,在資料庫里查詢有關符合查詢條件物品的信息,並通過頁面的展現顯示出來。這主要是在網頁代碼中插入jsp腳本或調用有關功能才能實現的,如webinf裡面的各種jsp功能。但是在分頁時,需要考慮的很清楚,搞清頁與頁之間的邏輯聯系才能實現合理正常的分頁功能,如<%}else{%><a href="goodsAction.do?action=0&i=<%=number-1%>">,<td width="18%"><%if(maxPage<=(number+1)){%>下一頁<%}else{%>
<a href="goodsAction.do?action=0&i=<%=number+1%>">下一頁</a>
<%}%>各個jsp代碼的編寫功能可以實現不同的功能,如查詢,插入等。根據資料庫里的商品的特殊唯一標記,可以迅速被搜索出來顯示給我們,如有關的jsp包括goodSelect.jsp,goodInsert.jsp,goodSelectBig.jsp,goodSelectContent.jsp,goodSelectSmall.jsp等。在具體到每一個jsp時,都要認真思考所要實現的功能,這其中的代碼是最難寫的,需要很強的邏輯性和其他內容的關聯性。這就要求你不僅要熟練掌握網頁代碼的編寫,jsp的相關知識,還要掌握有關功能的編寫並能順利實現,這都是非常難以實現的,除了請教同學,還必須去查詢有關書籍,才能獲得有關具體功能的代碼的編寫。
在這次難得的B to C網站設計中,讓我體會到網站設計的復雜性,以及java應用的高級性特點,能實現那麼多的復雜功能。這只是一個再簡單不過的一個網站,就這么復雜,實現的功能雖然不多,但已經編寫了很多的jsp等有關代碼。如果是其他更高級的網站,實現更多功能的網站,也很美化的網站,可見網站體系龐大,資料庫的龐大,裡面內容的復雜,聯系的錯綜雜亂多種多樣,但是,只有通過他們之間的聯系和邏輯性,以及縷清他們之間的關系,並能正確的調用才能全部的利用起來,實現更高的效率和利用率。
B. 學習Java程序設計的方法和技巧
Java異常學習心得
本文重在Java中異常機制的一些概念。寫本文的目的在於方便我很長時間後若是忘了這些東西可以通過這片文章迅速回憶起來。
1. 異常機制
1.1
異常機制是指當程序出現錯誤後,程序如何處理。具體來說,異常機制提供了程序退出的安全通道。當出現錯誤後,程序執行的流程發生改變,程序的控制權轉移到異常處理器。
1.2
傳統的處理異常的辦法是,函數返回一個特殊的結果來表示出現異常(通常這個特殊結果是大家約定俗稱的),調用該函數的程序負責檢查並分析函數返回的結果。這樣做有如下的弊端:例如函數返回-1代表出現異常,但是如果函數確實要返回-1這個正確的值時就會出現混淆;可讀性降低,將程序代碼與處理異常的代碼混爹在一起;由調用函數的程序來分析錯誤,這就要求客戶程序員對庫函數有很深的了解。
1.3 異常處理的流程
1.3.1 遇到錯誤,方法立即結束,並不返回一個值;同時,拋出一個異常對象
1.3.2 調用該方法的程序也不會繼續執行下去,而是搜索一個可以處理該異常的異常處理器,並執行其中的代碼
2 異常的分類
2.1 異常的分類
2.1.1
異常的繼承結構:基類為Throwable,Error和Exception繼承Throwable,RuntimeException和IOException等繼承Exception,具體的RuntimeException繼承RuntimeException。
2.1.2
Error和RuntimeException及其子類成為未檢查異常(unchecked),其它異常成為已檢查異常(checked)。
2.2 每個類型的異常的特點
2.2.1 Error體系
Error類體系描述了Java運行系統中的內部錯誤以及資源耗盡的情形。應用程序不應該拋出這種類型的對象(一般是由虛擬機拋出)。如果出現這種錯誤,除了盡力使程序安全退出外,在其他方面是無能為力的。所以,在進行程序設計時,應該更關注Exception體系。
2.2.2 Exception體系
Exception體系包括RuntimeException體系和其他非RuntimeException的體系
2.2.2.1 RuntimeException
RuntimeException體系包括錯誤的類型轉換、數組越界訪問和試圖訪問空指針等等。處理RuntimeException的原則是:如果出現RuntimeException,那麼一定是程序員的錯誤。例如,可以通過檢查數組下標和數組邊界來避免數組越界訪問異常。
2.2.2.2 其他(IOException等等)
這類異常一般是外部錯誤,例如試圖從文件尾後讀取數據等,這並不是程序本身的錯誤,而是在應用環境中出現的外部錯誤。
2.3 與C++異常分類的不同
2.3.1
其實,Java中RuntimeException這個類名起的並不恰當,因為任何異常都是運行時出現的。(在編譯時出現的錯誤並不是異常,換句話說,異常就是為了解決程序運行時出現的的錯誤)。
2.3.2
C++中logic_error與Java中的RuntimeException是等價的,而runtime_error與Java中非RuntimeException類型的異常是等價的。
3 異常的使用方法
3.1 聲明方法拋出異常
3.1.1 語法:throws(略)
3.1.2 為什麼要聲明方法拋出異常?
方法是否拋出異常與方法返回值的類型一樣重要。假設方法拋出異常確沒有聲明該方法將拋出異常,那麼客戶程序員可以調用這個方法而且不用編寫處理異常的代碼。那麼,一旦出現異常,那麼這個異常就沒有合適的異常控制器來解決。
3.1.3 為什麼拋出的異常一定是已檢查異常?
RuntimeException與Error可以在任何代碼中產生,它們不需要由程序員顯示的拋出,一旦出現錯誤,那麼相應的異常會被自動拋出。而已檢查異常是由程序員拋出的,這分為兩種情況:客戶程序員調用會拋出異常的庫函數(庫函數的異常由庫程序員拋出);客戶程序員自己使用throw語句拋出異常。遇到Error,程序員一般是無能為力的;遇到RuntimeException,那麼一定是程序存在邏輯錯誤,要對程序進行修改(相當於調試的一種方法);只有已檢查異常才是程序員所關心的,程序應該且僅應該拋出或處理已檢查異常。
3.1.4
注意:覆蓋父類某方法的子類方法不能拋出比父類方法更多的異常,所以,有時設計父類的方法時會聲明拋出異常,但實際的實現方法的代碼卻並不拋出異常,這樣做的目的就是為了方便子類方法覆蓋父類方法時可以拋出異常。
3.2 如何拋出異常
3.2.1 語法:throw(略)
3.2.2 拋出什麼異常?
對於一個異常對象,真正有用的信息時異常的對象類型,而異常對象本身毫無意義。比如一個異常對象的類型是ClassCastException,那麼這個類名就是唯一有用的信息。所以,在選擇拋出什麼異常時,最關鍵的就是選擇異常的類名能夠明確說明異常情況的類。
3.2.3
異常對象通常有兩種構造函數:一種是無參數的構造函數;另一種是帶一個字元串的構造函數,這個字元串將作為這個異常對象除了類型名以外的額外說明。
3.2.4
創建自己的異常:當Java內置的異常都不能明確的說明異常情況的時候,需要創建自己的異常。需要注意的是,唯一有用的就是類型名這個信息,所以不要在異常類的設計上花費精力。
3.3 捕獲異常
如果一個異常沒有被處理,那麼,對於一個非圖形界面的程序而言,該程序會被中止並輸出異常信息;對於一個圖形界面程序,也會輸出異常的信息,但是程序並不中止,而是返回用Ы緱媧�硌�分小?BR> 3.3.1 語法:try、catch和finally(略)
控制器模塊必須緊接在try塊後面。若擲出一個異常,異常控制機制會搜尋參數與異常類型相符的第一個控制器隨後它會進入那個catch
從句,並認為異常已得到控制。一旦catch 從句結束對控制器的搜索也會停止。
3.3.1.1 捕獲多個異常(注意語法與捕獲的順序)(略)
3.3.1.2 finally的用法與異常處理流程(略)
3.3.2 異常處理做什麼?
對於Java來說,由於有了垃圾收集,所以異常處理並不需要回收內存。但是依然有一些資源需要程序員來收集,比如文件、網路連接和圖片等資源。
3.3.3 應該聲明方法拋出異常還是在方法中捕獲異常?
原則:捕捉並處理哪些知道如何處理的異常,而傳遞哪些不知道如何處理的異常
3.3.4 再次拋出異常
3.3.4.1 為什麼要再次拋出異常?
在本級中,只能處理一部分內容,有些處理需要在更高一級的環境中完成,所以應該再次拋出異常。這樣可以使每級的異常處理器處理它能夠處理的異常。
3.3.4.2 異常處理流程
對應與同一try塊的catch塊將被忽略,拋出的異常將進入更高的一級。
4 關於異常的其他問題
4.1 過度使用異常
首先,使用異常很方便,所以程序員一般不再願意編寫處理錯誤的代碼,而僅僅是簡簡單單的拋出一個異常。這樣做是不對的,對於完全已知的錯誤,應該編寫處理這種錯誤的代碼,增加程序的魯棒性。另外,異常機制的效率很差。
4.2 將異常與普通錯誤區分開
對於普通的完全一致的錯誤,應該編寫處理這種錯誤的代碼,增加程序的魯棒性。只有外部的不能確定和預知的運行時錯誤才需要使用異常。
4.3 異常對象中包含的信息
一般情況下,異常對象唯一有用的信息就是類型信息。但使用異常帶字元串的構造函數時,這個字元串還可以作為額外的信息。調用異常對象的getMessage()、toString()或者printStackTrace()方法可以分別得到異常對象的額外信息、類名和調用堆棧的信息。並且後一種包含的信息是前一種的超集。
C. java 計算器課程設計報告
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;//導包
class MyClass extends JFrame
//創建一個MyClass類繼承JFrame框架的窗口類,
//也就是說JFrame里有的功能MyClass都能實現
{
JLabel a1=new JLabel("第一個數");
//創建一個顯示「第一個數」的標簽
JLabel a2=new JLabel("第二個數");
JLabel a3=new JLabel("運算結果");
JTextField b1=new JTextField(5);
//創建一個文本框、默認長度為5,用來輸入運算數字,當然也可以默認為空
JTextField b2=new JTextField(5);
JTextField b3=new JTextField(5);
//創建一個用於顯示運算結果的標簽,也可以創建一個標簽來顯示
JButton a=new JButton("加");
//創建一個用於加法計算的按鈕,點擊時進行加法運算
JButton b=new JButton("減");
JButton c=new JButton("乘");
JButton d=new JButton("除");
JPanel jp1=new JPanel();//創建一個面板,用來放控制項
JPanel jp2=new JPanel();
JPanel jp3=new JPanel();
MyClass()//構造函數,用來初始化的
{
setLayout(new GridLayout(3,1));//添加一個四行四列的布局管理器
jp1.setLayout(new FlowLayout());//設置JP1面板為流式布局管理器
jp1.setLayout(new FlowLayout());
//將a1,b1,a2,b2四個控制項添加到jp1面板中
jp1.add(a1);
jp1.add(b1);
jp1.add(a2);
jp1.add(b2);
jp1.add(a3);
//將a,b,c,d四個控制項添加到jp2面板中
jp2.add(a);
jp2.add(b);
jp2.add(c);
jp2.add(d);
jp3.add(a3);
jp3.add(b3);
//將jp1,jp2,jp3三個面板添加到窗口中
add(jp1);
add(jp3);
add(jp2);
Object e;
a.addActionListener(new ActionListener()
//創建一個匿名的事件監聽器
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
double x=Double.valueOf(b1.getText().toString());
//獲取第一個輸入數,並將其由String型轉換成double型
double y=Double.valueOf(b2.getText().toString());
//獲取第二個輸入數,並將其由String型轉換成double型
b3.setText(""+(x+y));
//將運算結果在b3這個文本框中顯示
}
});
b.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
double x=Double.valueOf(b1.getText().toString());
double y=Double.valueOf(b2.getText().toString());
b3.setText(""+(x-y));
}
});
c.addActionListener(new ActionListener()//創建一個匿名的事件監聽器
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
double x=Double.valueOf(b1.getText().toString());
double y=Double.valueOf(b2.getText().toString());
b3.setText(""+(x*y));
}
});
d.addActionListener(new ActionListener()//創建一個匿名的事件監聽器
{
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
double x=Double.valueOf(b1.getText().toString());
double y=Double.valueOf(b2.getText().toString());
//因為0不能做除數,所以在這里需要進行判斷
if(y==0)
{
b3.setText("錯誤");
}
else
{
b3.setText(""+(x/y));
}
}
});
//下面的是設置窗口的屬性
this.setTitle("計算器");//設置窗口的標題
//this.setSize(400,400);//設置窗口的大小,也可以改成this.pack()
this.pack();
this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);//設置關閉屬性
this.setVisible(true);//設置窗口的可見性
}
public static void main(String[] args)//主函數
{
new MyClass();
}
}
D. 跪求java課程設計報告!要求:編寫一個類似於windows計算器的程序,能實現加減乘除等基本運算並能處理異常
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.TitledBorder;
public class Jisuan extends JFrame implements ActionListener{
private JTextField reasult;
private JButton btn1,btn2,btn3,btn4,btn5,btn6,btn7,btn8,btn9,btn0,
btnAC,btnAdd,btnSub,btnReasult,btnD,
btnAbout,btnCancel;
private boolean add,sub,end,s,c;
private String str;
private double num1,num2;
public Jisuan(){
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
TitledBorder tb=new TitledBorder("輸出"); tb.setTitleColor(Color.BLUE);
btnAbout=new JButton(" 關於 ");
btnCancel=new JButton("Cancel");
btnCancel.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ee)
{
System.exit(0);
}
});
btnAbout.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent ee)
{
JOptionPane.showMessageDialog(null,"無",
"消息",JOptionPane.INFORMATION_MESSAGE);
}
});
p3.add(btnAbout);
p3.add(btnCancel);
//JPanel p4=new JPanel();
//JPanel p5=new JPanel();
//reasult.setBorder(tb);
reasult =new JTextField("0",20);
reasult.setEditable(false);
reasult.setHorizontalAlignment(JTextField.RIGHT);
reasult.setForeground(Color.BLUE);
p1.setBorder(tb);
p1.add(reasult);
btn0=new JButton("0"); btn0.addActionListener(this);
btn1=new JButton("1"); btn1.addActionListener(this);
btn2=new JButton("2"); btn2.addActionListener(this);
btn3=new JButton("3"); btn3.addActionListener(this);
btn4=new JButton("4"); btn4.addActionListener(this);
btn5=new JButton("5"); btn5.addActionListener(this);
btn6=new JButton("6"); btn6.addActionListener(this);
btn7=new JButton("7"); btn7.addActionListener(this);
btn8=new JButton("8"); btn8.addActionListener(this);
btn9=new JButton("9"); btn9.addActionListener(this);
btnD=new JButton("."); btnD.addActionListener(this); btnD.setForeground(Color.RED);
btnAC=new JButton("AC"); btnAC.addActionListener(this); btnAC.setBackground(Color.PINK);
btnAdd=new JButton("+"); btnAdd.addActionListener(this); btnAdd.setForeground(Color.BLUE);
btnSub=new JButton("—"); btnSub.addActionListener(this); btnSub.setForeground(Color.BLUE);
btnReasult=new JButton("="); btnReasult.addActionListener(this); btnReasult.setForeground(Color.RED);
p2.add(btn1);p2.add(btn2);p2.add(btn3);p2.add(btn4);p2.add(btn5);
p2.add(btn6);p2.add(btn7);p2.add(btn8);p2.add(btn9);p2.add(btn0);
p2.add(btnD);p2.add(btnAC);p2.add(btnAdd);p2.add(btnSub);p2.add(btnReasult);
p2.setLayout(new GridLayout(5,3));
add(p1,BorderLayout.NORTH);
add(p2,BorderLayout.CENTER);
add(p3,BorderLayout.SOUTH);
}
public void num(int i){
String s = null;
s=String.valueOf(i);
if(end){
//如果數字輸入結束,則將文本框置零,重新輸入
reasult.setText("0");
end=false;
}
if((reasult.getText()).equals("0")){
//如果文本框的內容為零,則覆蓋文本框的內容
reasult.setText(s);
}
else{
//如果文本框的內容不為零,則在內容後面添加數字
str = reasult.getText() + s;
reasult.setText(str);
}
}/*
String s=null;
s=String.valueOf(i);
str=reasult.getText()+s;
reasult.setText(str);
}*/
public void actionPerformed(ActionEvent e){
if(e.getSource()==btn1)
num(1);
else if(e.getSource()==btn2)
num(2);
else if(e.getSource()==btn3)
num(3);
else if(e.getSource()==btn4)
num(4);
else if(e.getSource()==btn5)
num(5);
else if(e.getSource()==btn6)
num(6);
else if(e.getSource()==btn7)
num(7);
else if(e.getSource()==btn8)
num(8);
else if(e.getSource()==btn9)
num(9);
else if(e.getSource()==btn0)
num(0);
else if(e.getSource()==btnAdd){
sign(1);
btnD.setEnabled(true);
}
else if(e.getSource()==btnSub){
sign(2);
btnD.setEnabled(true);
}
else if(e.getSource()==btnAC){
btnD.setEnabled(true);
reasult.setText("0");
}
else if(e.getSource()==btnD){
str=reasult.getText();
str+=".";
reasult.setText(str);
btnD.setEnabled(false);
}
else if(e.getSource()==btnReasult){
btnD.setEnabled(true);
num2=Double.parseDouble(reasult.getText());
if(add){
num1=num1 + num2;}
else if(sub){
num1=num1 - num2;}
reasult.setText(String.valueOf(num1));
end=true;
}
}
public void sign(int s){
if(s==1){
add=true;
sub=false;
}
else if(s==2){
add=false;
sub=true;
}
num1=Double.parseDouble(reasult.getText());
end=true;
}
public static void main(String[] args){
Jisuan j=new Jisuan();
j.setTitle("+/-簡易計算器");
j.setLocation(500,280);
j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
j.setResizable(false);
j.pack();
j.setVisible(true);
}
}
沒寫乘法,你自其實從網上搜索就能搜出來現成代碼
E. 《java程序設計》 課程總結怎麼寫
1、課程收獲與不足
自己的收獲
經過一個學期的JAVA課程學習,現在雖說算不上什麼專業的JAVA程序員,但我還是很有收獲。了解了這門語言,探索了這門語言,認知了這門語言。我從一個什麼都不懂的菜鳥,到現在能夠自己編一個簡單的程序並使其跑起來,在本學期末還與小組成員成功編譯運行了一個JAVA游戲,感覺十分有成就感呢!回首之前的學習歷程,要想真正有所學,有所得,必須持之以恆,踏踏實實的跟著婁老師的「方針政策」走,不要有排斥心理。剛開始學習JAVA的時候的確不習慣,覺得很累,每周的java學習與博客總結都會佔用周末業余時間。不過心態一定要好,反正要做,還不如把它做好,不要敷衍自己。萬事開頭難,習慣成自然!哈哈哈,雖然已經學了一學期JAVA了,但其實還有好多好多東西是需要自己去探索的。學習JAVA應該是循環漸進,按部就班,腳踏實地的。對了,JAVA課程是我第一次接觸翻轉課堂,翻轉課堂講究的是自己主動學習,主動探索,然後把問題反饋給老師,老師在課堂上解答。不過由於c語言學的不是很好,所以剛開始看到JAVA的時候,看著源代碼,都不知道是什麼意思,看書的時候一看到源代碼就頭疼,因為根本看不懂,那段時間挺挫敗的。不過幸好每周都要考試!所以這也是驅動我學習的一個主要原因,想要拿高分,就得花時間看,把不懂的想盡辦法弄懂。於是最開始最艱難的那段時間,我大部分課下時間都花在JAVA上,不懂的問高其和周正一,再加上翻書,網上查閱資料。三周下來,效果也挺明顯的,並且我覺得JAVA這門語言雖然很高級但並不復雜,很多功能都是可以直接調用的,不需要自己親手去編。世上無難事,只怕有心人。對於任何新生事物,我們首先不要排斥,如果可以,帶著興趣去探索,必定其樂無窮!受益匪淺!這學期也是我第一次接觸到博客園。我感覺博客園真的是一個集思廣益的地方,大家可以把自己的學習心得體會都通過博客的形式發表出來,然後其他人就可以去閱讀、去參考別人成功的方法,有什麼問題也可以建立一個小組,然後博主會和大家互動,共同探討,解決問題。一學期的博客園生涯讓我逐漸喜歡上了這里。記住,學JAVA,一定要做到課前預習與課後復習,書上的概念要理解透徹,代碼一定要過手;多和同學溝通,互相學習,取長補短。婁老師說過,知識是學不完的,重要的是要找到一種適合自己的高效的學習方法,這將受益終生。
2、自己需要改進的地方
我覺得應該多看別人的博客,多與別人進行交流,但是本學期學習壓力較大,這方面做得不夠好,所以這是我的一大遺憾!其次,對JAVA的不同庫的掌握需要增進,一旦對JAVA各種庫的引用融會貫通,對較大程序的編寫就能事半功倍,效率遠超C語言,這也是JAVA最吸引我的一個地方。還有就是學JAVA千萬不要浮躁,不要趕進度。說到浮躁,這也是一個很值得我深思的問題,我覺得我剛開始還沒完全接受JAVA的時候,就比較浮躁。做事停留在表面,敷衍。經過後來逐漸調整,才慢慢改變。真正學習的時候,浮躁會使你失去很多。
如果有結對,寫一下你提供的幫助或接受了什麼幫助,並對老師提供參考意見
在實驗三和實驗五階段都有結對的部分。通過結對,我深刻地明白了團隊合作的重要性。團隊精神能推動團隊運作和發展。在團隊精神的作用下,團隊成員產生了互相關心、互相幫助的交互行為,顯示出關心團隊的責任感,並努力自覺地維護團隊的集體榮譽。我覺得結對編程這一環節很好,不僅讓大家能夠明確分工,合作的編寫出程序,而且能培養大家的默契,讓我們能夠在實際操作過程中更好的編寫代碼。要想成功編寫程序,這一過程是很復雜的,而團隊方式可以使其簡單許多,遇到問題的時候可以大家一起想,集思廣益,而且團隊操作在很大程度上還可以實現優勢的互補(比如git代碼,然後共享)。
3、給學弟學妹們的意見
如果重新學習這門課,怎麼做才可以學得更好?
如果可以重新學習這門課的話,我想我會做的更好。首先我會找一本好的書本教材,然後輔助看教學視頻。因為翻轉課堂更強調的是自己主動學習,主動探索,主動發現問題。一本好的教材,可以讓你更快更好的進入 Java的世界,然後看視頻是一種比較直觀的輔助學習方式。建議先看課本,發現不懂的地方,再結合視頻,這樣效果更好,如果視頻上沒有講到的,就通過其他方式解決。老師之前會發視頻鏈接,那裡面講的內容(畢向東老師主講)都很不錯。書上概念與代碼搞懂了後,自己一定要主動動手敲代碼!因為看懂和學懂完全是兩回事,一定要學好基本語法,弄清 Java語言的特點。剛開始學習時,有些知識可能有些難懂,自己也不會敲代碼。不過這沒關系,這很正常。多看多問,多實踐,慢慢的你就入門了。千萬不要投機取巧!主動敲代碼真的是學JAVA的精髓!JAVA和其他的編程語言一樣,在學懂理論後,一定要實踐。只有多動手編程,哪怕是簡單的小程序,重復實現書上簡單的例子,也是在積累和提高。
4、問卷調查
你覺得這門課老師應該繼續做哪一件事情?
老師應該繼續要求扇貝打卡與五筆打字練習,然後期末加分。這種方法很值得提倡,希望能夠繼續做下去。這不僅可以調動大家學習的積極性,而且還讓我們的英語水平提高了很多,對於四六級以及以後在工作中打字速度等其他的方面都有很大的幫助。在博客園里發表博客也是很好的一種總結心得體會的方法,值得提倡。博客園是一個集思廣益的地方,大家把自己的學習心得體會都通過博客的形式發表出來,然後大家可以交流意見,有什麼不懂的也可以直接在問題小組里提出來,共同探討,共同解決問題。這種感覺很棒。對了,每周一考我也覺得這必不可少,可以敦促學生的學習進度。
你覺得這門課老師應該停止做哪一件事情?
感覺每周的學習任務還是偏重了,幾乎要佔據半個周末的時間來搞JAVA。老師應根據每周學習內容的難易程度,合理調配學習任務量。
你覺得這門課老師應該開始做什麼新的事情?
希望老師在課上多講一點關於教材知識的內容(包括實驗),讓我們能夠更高效更有針對性的去學習JAVA。因為教材的內容太多,盲目的去看就會浪費很多時間。如果因為趕進度,只是囫圇吞棗的看一遍教材的話,我們就不能很好的去理解java的相關知識。
F. java課程設計
去網站上下載一個,這里沒人能給你寫這么多
G. 告訴我一個Java課程設計報告心得咋么寫
就是畫一下類圖,順序圖,用例圖是吧,可是你首先得告訴我你計算器做成什麼樣子?你一共搞了幾個類 是吧。這些圖都得和你的源碼對得上號才行啊。可是現在不知道你源碼寫成什麼樣子啊。。