百度
360搜索
搜狗搜索

java程序设计课程报告,!高分跪求帮忙写一个简单小程序的JAVA课程设计报告(内详!!)详细介绍

本文目录一览: 《java程序设计》课程总结怎么写(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的相关知识。

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();
}
}
http://wenku.baidu.com/view/6bb6660ef12d2af90242e64c.html
这是要神马 要程序还是?

跪求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);
}
}
没写乘法,你自其实从网上搜索就能搜出来现成代码

java面向对象程序设计实验报告怎么写

1。People.java
public class People {
//性别(sex)及出生日期(date);方法成员有:获取人的性别和出生日期及构造方法。要求构造方法可以设置性别和出生日期的初始值。
private int sex;
private Date birth;
public People (int sex, Date birth) {
this.sex = sex;
this.birth = birth;
}
public int getSex() {
return this.sex;
}
public Date getBirth() {
return this.birth;
}
}
2。Student.java
public class Student extends People{
private int sex;
private Date birth;
private String name;
private int stuno;
private double grate;
private String studentNative;

public Student(int sex, Date birth, String name, int stuno, double grate, String studentNative) {
super(sex, birth);
this.name = name;
this.stuno = stuno;
this.grate = grate;
this.studentNative = studentNative;
}
public Date getBirth() {
return birth;
}
public double getGrate() {
return grate;
}
public String getName() {
return name;
}
public int getSex() {
return sex;
}
public String getStudentNative() {
return studentNative;
}
public int getStuno() {
return stuno;
}
}
3。测试类自己编写就好了,创建一个People和Student的对象,然后设置值,取值就可以了。
五。
1.构造方法没有返回值,方法名和类名一样.
2.继承是指子类可以拥有父类的方法和属性;多态是指父类的引用可以指向子类对象的实例
3.重写
4.重载

求一份JAVA计算机程序设计报告

需要时间,一会是做不出来的,建议留个邮件地址,等人做好了发给你。
需要时间
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.*;
import javax.swing.border.*;
import java.util.*;
@SuppressWarnings("serial")
public class ComputerPad extends JFrame
implements ActionListener
{
private NumberButton[] numberButton;
private OperationButton[] operationButton;
private JButton dotButton;
private JButton signButton;
private JButton backspaceButton;
private JButton reciprocalButton;
private JButton equalButton;
private JButton clearZeroButton;
JPanel panel;
JTextField resultShow;
operationButton = new OperationButton[4];
operationButton[0] = new OperationButton("+");
operationButton[1] = new OperationButton("-");
operationButton[2] = new OperationButton("*");
operationButton[3] = new OperationButton("/");

阅读更多 >>>  jsp转换器,jsp是什么

LinkedList

dataList;

// 等号进行默认设置

boolean equalButtonIsPressed = false;

public ComputerPad(){

super("yuelou计算器");

dataList = new LinkedList

();

numberButton = new NumberButton[10];

for(int i = 0; i <= 9; i++){

numberButton[i] = new NumberButton(i);

numberButton[i].addActionListener(this);

}

operationButton = new OperationButton[4];

for(int i = 0;i < 4; i++){

operationButton[i] = new OperationButton(operators[i]);

operationButton[i].addActionListener(this);

}

//符号进行初始设置

dotButton = new JButton(".");

signButton = new JButton("+/-");

equalButton = new JButton("=");

reciprocalButton = new JButton("1/x");

backspaceButton = new JButton("退格");

clearZeroButton = new JButton("AC");

//设置颜色

clearZeroButton.setForeground(Color.red);

backspaceButton.setForeground(Color.red);

reciprocalButton.setForeground(Color.red);

equalButton.setForeground(Color.blue);

signButton.setForeground(Color.blue);

dotButton.setForeground(Color.blue);

clearZeroButton.addActionListener(this);

backspaceButton.addActionListener(this);

reciprocalButton.addActionListener(this);

equalButton.addActionListener(this);

signButton.addActionListener(this);

dotButton.addActionListener(this);

resultShow = new JTextField(10);

resultShow.setHorizontalAlignment(JTextField.RIGHT);

resultShow.setForeground(Color.blue);

resultShow.setFont(new Font("TimesRoman", Font.PLAIN, 15));

resultShow.setBorder(new SoftBevelBorder(BevelBorder.LOWERED));

resultShow.setBackground(Color.white);

resultShow.setEditable(false);

panel = new JPanel();

// 设置四行五列

panel.setLayout(new GridLayout(4,5));

//面板中的第一行

for(int i = 1; i < 4; i++)

{

p.add(numberButton[i]);

}

p.add(operationButton[0]);

p.add(clearButton);

//面板中的第2行

for(int i = 4; i < 7; i++)

{

p.add(numberButton[i]);

}

p.add(operationButton[1]);

p.add(bkspaceButton)

//面板中的第3行

for(int i = 7; i < 10; i++)

{

p.add(numberButton[i]);

}

p.add(operationButton[2]);

p.add(reciprocalButton);

//面板中的第4行

p.add(numberButton[0]);

p.add(signButton);

p.add(dotButton);

p.add(operationButton[3]);

p.add(equalButton);

add(panel, BorderLayout.CENTER);

add(resultShow, BorderLayout.NORTH);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setVisible(true);

setBounds(100, 50, 340, 180);

setResizable(false);

validate();

}

public void actionPerformed(ActionEvent e) {

//如果按下的是“数字按钮”

if(e.getSource() instanceof NumberButton){

NumberButton b = (NumberButton)e.getSource();

//字符串中没有字符时

if(dataList.size() == 0){

int number = b.getNumber();

dataList.add("" + number);

resultShow.setText("" + number);

equalButtonIsPressed = false;

}

//字符串中有一个字符时,并且在此时没有按过等号

else if(dataList.size() == 1 && equalButtonIsPressed == false){

int number = b.getNumber();

String num = (String)dataList.getFirst();

String s = num.concat("" + number);

//把S放在字符串的第一个位置,下标为零

dataList.set(0, s);

//把S输出到窗口

resultShow.setText(s);

}//字符串中有一个字符时,并且在此时按过等号

else if(dataList.size() == 1 && equalButtonIsPressed == true){

int number = b.getNumber();

//把字符串中的第一个移出

dataList.removeFirst();

dataList.add("" + number);

equalButtonIsPressed = false;

resultShow.setText("" + number);

}

else if(dataList.size() == 2){

int number = b.getNumber();

dataList.add("" + number);

resultShow.setText("" + number);

}else if(dataList.size() == 3){

int number = b.getNumber();

String num = (String)dataList.getLast();

String s = num.concat("" + number);

dataList.set(2, s);

resultShow.setText(s);

}

}

//如果按下的是“各种操作符按钮”

else if(e.getSource() instanceof OperationButton){

OperationButton b = (OperationButton)e.getSource();

if(dataList.size() == 1){

String fuhao = b.getOperator();

dataList.add(fuhao);

}

else if(dataList.size() == 2){

String fuhao = b.getOperator();

dataList.set(1, fuhao);

}

else if(dataList.size() == 3){

String fuhao = b.getOperator();

String number1 = (String)dataList.getFirst();

String number2 = (String)dataList.getLast();

// 对加减乘除进行符号提取

String operator = (String)dataList.get(1);

// 对加减乘除进行符号提取

double n1 = Double.parseDouble(number1);

double n2 = Double.parseDouble(number2);

//对数据进行初始化设置

double n = 0;

//进行运算

if(operator.equals("+")){

n = n1 + n2;

}

else if(operator.equals("-")){

n = n1 - n2;

}

else if(operator.equals("*")){

n = n1 * n2;

}

else if(operator.equals("/")){

n = n1 / n2;

}

// 输出接果 并对输入的字符串进行输入

dataList.clear();

dataList.add("" + n);

dataList.add(fuhao);

resultShow.setText("" + n);

}

}

//如果按下的是“等号按钮”

else if(e.getSource() == equalButton){

equalButtonIsPressed = true;

//链表内有两个字符串时

if(dataList.size() == 2)

{

// 对加减乘除进行符号提取(详细注释同上)

String operator =

(String)dataList.get(1);

String num1 =

(String)dataList.getFirst();

double n1 =

Double.parseDouble(num1);

double n = 0;

if(operator.equals("+"))

{

n = n1 + n1;

}

else if(operator.equals("-"))

{

n = n1 - n1;

}

else if(operator.equals("*"))

{

n = n1 * n1;

}

else if(operator.equals("/"))

{

n = n1 / n1;

}

//清理链表

dataList.clear();

dataList.add("" + n);

resultShow.setText(""+n);

}

//链表内有三个字符串时

else if(dataList.size() == 3)

{

String number1 = (String)dataList.getFirst();

String number2 = (String)dataList.getLast();

String operator = (String)dataList.get(1);

double n1 = Double.parseDouble(number1);

double n2 = Double.parseDouble(number2);

double n = 0;

if(operator.equals("+")){

n = n1 + n2;

}

else if(operator.equals("-")){

n = n1 - n2;

}

else if(operator.equals("*")){

n = n1 * n2;

}

else if(operator.equals("/")){

n = n1 / n2;

}

dataList.clear();

dataList.add("" + n);

resultShow.setText("" + n);

}

}

//如果按下的是“小数点按钮”

else if(e.getSource() == dotButton){

if(dataList.size() == 0)

{

//默认输出“0.”

dataList.add("0.");

}

else if(dataList.size() == 1)

{

String num1 = dataList.getFirst();

//判断以前是否有过输入小数点,为-1时为没有加点

if(num1.indexOf('.') == -1)

{

String s = num1.concat(".");

dataList.set(0,s);

}

}

else if(dataList.size() == 2)

{

dataList.add("0.");

}

else if(dataList.size() == 3)

{

String num2 = dataList.getLast();

if(num2.indexOf('.') == -1)

{

String s = num2.concat(".");

dataList.set(2,s);

}

}

}

//如果按下的是“退格按钮”

else if(e.getSource() == backspaceButton){

if(dataList.size() == 1)

{

String num1 = dataList.getFirst();

String s ;

if(num1.length() > 1)

{

//截取字符串中的子串

s = num1.substring(0,num1.length()-1);

}

else

{

s = "0";

}

dataList.set(0,""+s);

resultShow.setText(s);

}

else if(dataList.size() == 3)

{

String num2 = dataList.getLast();

String s ;

if(num2.length() > 1)

{

s = num2.substring(0,num2.length()-1);

}

else

{

s = "0";

}

dataList.set(2,""+s);

resultShow.setText(s);

}

}

//如果按下的是“正负号按钮”

else if(e.getSource() == signButton){

if(dataList.size() == 1)

{

String num1 = dataList.getFirst();

double n1 = Double.parseDouble(num1);

n1 = -1 * n1;

dataList.set(0,""+n1);

resultShow.setText(""+n1);

}

else if(dataList.size() == 3)

{

String num2 = dataList.getLast();

double n2 = Double.parseDouble(num2);

n2 = -1 * n2;

dataList.set(2,""+n2);

resultShow.setText(""+n2);

}

}

//如果按下的是“倒数按钮”

else if(e.getSource() == reciprocalButton){

if(dataList.size() == 1)

{

String num1 = dataList.getFirst();

double n1 = Double.parseDouble(num1);

n1 = 1 / n1;

dataList.set(0,""+n1);

resultShow.setText(""+n1);

}

else if(dataList.size() == 3)

{

String num2 = dataList.getLast();

double n2 = Double.parseDouble(num2);

n2 = 1 / n2;

dataList.set(2,""+n2);

resultShow.setText(""+n2);

}

}

//如果按下的是“清零按钮”

else if(e.getSource() == clearZeroButton){

dataList.clear();

resultShow.setText("0");

}

}

public static void main(String[] args){

new ComputerPad();

}

}

这是主类 ~你建立一个类

还有两个分类

我在发给你

记得把我的名字该你的就可以拉

import javax.swing.*;

import java.awt.*;

public class NumberButton

extends JButton

{

private int number;

NumberButton(int number)

{

super("" + number);

this.number = number;

setForeground(Color.blue);

setFont(new Font("Serif", Font.BOLD,15));

}

public int getNumber()

{

return number;

}

}

///////////

import java.awt.Color;

import java.awt.Font;

import javax.swing.JButton;

public class OperationButton

extends JButton

{

private String operator;

OperationButton(String operator)

{

super(operator);

this.operator = operator;

setForeground(Color.RED);

setFont(new Font("Serif", Font.BOLD,15));

}

public String getOperator()

{

return operator;

}

}

阅读更多 >>>  在linux怎么编译并执行

!高分跪求帮忙写一个简单小程序的JAVA课程设计报告(内详!!)

连连看java源代码
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class lianliankan implements ActionListener
{
JFrame mainFrame; //主面板
Container thisContainer;
JPanel centerPanel,southPanel,northPanel; //子面板
JButton diamondsButton[][] = new JButton[6][5];//游戏按钮数组
JButton exitButton,resetButton,newlyButton; //退出,重列,重新开始按钮
JLabel fractionLable=new JLabel("0"); //分数标签
JButton firstButton,secondButton; //分别记录两次被选中的按钮
int grid[][] = new int[8][7];//储存游戏按钮位置
static boolean pressInformation=false; //判断是否有按钮被选中
int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戏按钮的位置坐标
int i,j,k,n;//消除方法控制
public void init(){
mainFrame=new JFrame("JKJ连连看");
thisContainer = mainFrame.getContentPane();
thisContainer.setLayout(new BorderLayout());
centerPanel=new JPanel();
southPanel=new JPanel();
northPanel=new JPanel();
thisContainer.add(centerPanel,"Center");
thisContainer.add(southPanel,"South");
thisContainer.add(northPanel,"North");
centerPanel.setLayout(new GridLayout(6,5));
for(int cols = 0;cols < 6;cols++){
for(int rows = 0;rows < 5;rows++ ){
diamondsButton[cols][rows]=new JButton(String.valueOf(grid[cols+1][rows+1]));
diamondsButton[cols][rows].addActionListener(this);
centerPanel.add(diamondsButton[cols][rows]);
}
}
exitButton=new JButton("退出");
exitButton.addActionListener(this);
resetButton=new JButton("重列");
resetButton.addActionListener(this);
newlyButton=new JButton("再来一局");
newlyButton.addActionListener(this);
southPanel.add(exitButton);
southPanel.add(resetButton);
southPanel.add(newlyButton);
fractionLable.setText(String.valueOf(Integer.parseInt(fractionLable.getText())));
northPanel.add(fractionLable);
mainFrame.setBounds(280,100,500,450);
mainFrame.setVisible(true);
}
public void randomBuild() {
int randoms,cols,rows;
for(int twins=1;twins<=15;twins++) {
randoms=(int)(Math.random()*25+1);
for(int alike=1;alike<=2;alike++) {
cols=(int)(Math.random()*6+1);
rows=(int)(Math.random()*5+1);
while(grid[cols][rows]!=0) {
cols=(int)(Math.random()*6+1);
rows=(int)(Math.random()*5+1);
}
this.grid[cols][rows]=randoms;
}
}
}
public void fraction(){
fractionLable.setText(String.valueOf(Integer.parseInt(fractionLable.getText())+100));
}
public void reload() {
int save[] = new int[30];
int n=0,cols,rows;
int grid[][]= new int[8][7];
for(int i=0;i<=6;i++) {
for(int j=0;j<=5;j++) {
if(this.grid[i][j]!=0) {
save[n]=this.grid[i][j];
n++;
}
}
}
n=n-1;
this.grid=grid;
while(n>=0) {
cols=(int)(Math.random()*6+1);
rows=(int)(Math.random()*5+1);
while(grid[cols][rows]!=0) {
cols=(int)(Math.random()*6+1);
rows=(int)(Math.random()*5+1);
}
this.grid[cols][rows]=save[n];
n--;
}
mainFrame.setVisible(false);
pressInformation=false; //这里一定要将按钮点击信息归为初始
init();
for(int i = 0;i < 6;i++){
for(int j = 0;j < 5;j++ ){
if(grid[i+1][j+1]==0)
diamondsButton[i][j].setVisible(false);
}
}
}
public void estimateEven(int placeX,int placeY,JButton bz) {
if(pressInformation==false) {
x=placeX;
y=placeY;
secondMsg=grid[x][y];
secondButton=bz;
pressInformation=true;
}
else {
x0=x;
y0=y;
fristMsg=secondMsg;
firstButton=secondButton;
x=placeX;
y=placeY;
secondMsg=grid[x][y];
secondButton=bz;
if(fristMsg==secondMsg && secondButton!=firstButton){
xiao();
}
}
}
public void xiao() { //相同的情况下能不能消去。仔细分析,不一条条注释
if((x0==x &&(y0==y+1||y0==y-1)) || ((x0==x+1||x0==x-1)&&(y0==y))){ //判断是否相邻
remove();
}
else{
for (j=0;j<7;j++ ) {
if (grid[x0][j]==0){ //判断第一个按钮同行哪个按钮为空
if (y>j) { //如果第二个按钮的Y坐标大于空按钮的Y坐标说明第一按钮在第二按钮左边
for (i=y-1;i>=j;i-- ){ //判断第二按钮左侧直到第一按钮中间有没有按钮
if (grid[x][i]!=0) {
k=0;
break;
}
else{ k=1; } //K=1说明通过了第一次验证
}
if (k==1) {
linePassOne();
}
}
if (y
<j){ 如果第二个按钮的y坐标小于空按钮的y坐标说明第一按钮在第二按钮右边
for (i=y+1;i<=j ;i++ ){ //判断第二按钮左侧直到第一按钮中间有没有按钮

if (grid[x][i]!=0){

k=0;

break;

}

else { k=1; }

}

if (k==1){

linePassOne();

}

}

if (y==j ) {

linePassOne();

}

}

if (k==2) {

if (x0==x) {

remove();

}

if (x0
<x) {
for (n=x0;n<=x-1;n++ ) {

if (grid[n][j]!=0) {

k=0;

break;

}

if(grid[n][j]==0 && n==x-1) {

remove();

}

}

}

if (x0>x) {

for (n=x0;n>=x+1 ;n-- ) {

if (grid[n][j]!=0) {

k=0;

break;

}

if(grid[n][j]==0 && n==x+1) {

remove();

}

}

}

}

}

for (i=0;i<8;i++ ) { //列

if (grid[i][y0]==0) {

if (x>i) {

for (j=x-1;j>=i ;j-- ) {

if (grid[j][y]!=0) {

k=0;

break;

}

else { k=1; }

}

if (k==1) {

rowPassOne();

}

}

if (x
<i) {
for (j=x+1;j<=i;j++ ) {

if (grid[j][y]!=0) {

k=0;

break;

}

else { k=1; }

}

if (k==1) {

rowPassOne();

}

}

if (x==i) {

rowPassOne();

}

}

if (k==2){

if (y0==y) {

remove();

}

if (y0
<y) {
for (n=y0;n<=y-1 ;n++ ) {

if (grid[i][n]!=0) {

k=0;

break;

}

if(grid[i][n]==0 && n==y-1) {

remove();

}

}

}

if (y0>y) {

for (n=y0;n>=y+1 ;n--) {

if (grid[i][n]!=0) {

k=0;

break;

}

if(grid[i][n]==0 && n==y+1) {

remove();

}

}

}

}

}

}

}

public void linePassOne(){

if (y0>j){ //第一按钮同行空按钮在左边

for (i=y0-1;i>=j ;i-- ){ //判断第一按钮同左侧空按钮之间有没按钮

if (grid[x0][i]!=0) {

k=0;

break;

}

else { k=2; } //K=2说明通过了第二次验证

}

}

if (y0
<j){ 第一按钮同行空按钮在与第二按钮之间
for (i=y0+1;i<=j ;i++){

if (grid[x0][i]!=0) {

k=0;

break;

}

else{ k=2; }

}

}

}

public void rowPassOne(){

if (x0>i) {

for (j=x0-1;j>=i ;j-- ) {

if (grid[j][y0]!=0) {

k=0;

break;

}

else { k=2; }

}

}

if (x0
<i) {
for (j=x0+1;j<=i ;j++ ) {

if (grid[j][y0]!=0) {

k=0;

break;

}

else { k=2; }

}

}

}

public void remove(){

firstButton.setVisible(false);

secondButton.setVisible(false);

fraction();

pressInformation=false;

k=0;

grid[x0][y0]=0;

grid[x][y]=0;

}

public void actionPerformed(ActionEvent e) {

if(e.getSource()==newlyButton){

int grid[][] = new int[8][7];

this.grid = grid;

randomBuild();

mainFrame.setVisible(false);

pressInformation=false;

init();

}

if(e.getSource()==exitButton)

System.exit(0);

if(e.getSource()==resetButton)

reload();

for(int cols = 0;cols < 6;cols++){

for(int rows = 0;rows < 5;rows++ ){

if(e.getSource()==diamondsButton[cols][rows])

estimateEven(cols+1,rows+1,diamondsButton[cols][rows]);

}

}

}

public static void main(String[] args) {

lianliankan llk = new lianliankan();

llk.randomBuild();

llk.init();

}

我爸爸是清华大学的老师,他教我的。

我有的

hi 我

前两天刚刚帮一个人做了一个

不过他要的是图片的

你们不会是同一个学校的吧?????

连连看java源代码

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class lianliankan implements ActionListener

{

JFrame mainFrame; //主面板

Container thisContainer;

JPanel centerPanel,southPanel,northPanel; //子面板

JButton diamondsButton[][] = new JButton[6][5];//游戏按钮数组

JButton exitButton,resetButton,newlyButton; //退出,重列,重新开始按钮

JLabel fractionLable=new JLabel("0"); //分数标签

JButton firstButton,secondButton; //分别记录两次被选中的按钮

int grid[][] = new int[8][7];//储存游戏按钮位置

static boolean pressInformation=false; //判断是否有按钮被选中

int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戏按钮的位置坐标

int i,j,k,n;//消除方法控制

public void init(){

mainFrame=new JFrame("JKJ连连看");

thisContainer = mainFrame.getContentPane();

thisContainer.setLayout(new BorderLayout());

centerPanel=new JPanel();

southPanel=new JPanel();

northPanel=new JPanel();

thisContainer.add(centerPanel,"Center");

thisContainer.add(southPanel,"South");

thisContainer.add(northPanel,"North");

centerPanel.setLayout(new GridLayout(6,5));

for(int cols = 0;cols < 6;cols++){

for(int rows = 0;rows < 5;rows++ ){

diamondsButton[cols][rows]=new JButton(String.valueOf(grid[cols+1][rows+1]));

diamondsButton[cols][rows].addActionListener(this);

centerPanel.add(diamondsButton[cols][rows]);

}

}

exitButton=new JButton("退出");

exitButton.addActionListener(this);

resetButton=new JButton("重列");

resetButton.addActionListener(this);

newlyButton=new JButton("再来一局");

newlyButton.addActionListener(this);

southPanel.add(exitButton);

southPanel.add(resetButton);

southPanel.add(newlyButton);

fractionLable.setText(String.valueOf(Integer.parseInt(fractionLable.getText())));

northPanel.add(fractionLable);

mainFrame.setBounds(280,100,500,450);

mainFrame.setVisible(true);

}

public void randomBuild() {

int randoms,cols,rows;

for(int twins=1;twins<=15;twins++) {

randoms=(int)(Math.random()*25+1);

for(int alike=1;alike<=2;alike++) {

cols=(int)(Math.random()*6+1);

rows=(int)(Math.random()*5+1);

while(grid[cols][rows]!=0) {

cols=(int)(Math.random()*6+1);

rows=(int)(Math.random()*5+1);

}

this.grid[cols][rows]=randoms;

}

}

}

public void fraction(){

fractionLable.setText(String.valueOf(Integer.parseInt(fractionLable.getText())+100));

}

public void reload() {

int save[] = new int[30];

int n=0,cols,rows;

int grid[][]= new int[8][7];

for(int i=0;i<=6;i++) {

for(int j=0;j<=5;j++) {

if(this.grid[i][j]!=0) {

save[n]=this.grid[i][j];

n++;

}

}

}

n=n-1;

this.grid=grid;

while(n>=0) {

cols=(int)(Math.random()*6+1);

rows=(int)(Math.random()*5+1);

while(grid[cols][rows]!=0) {

cols=(int)(Math.random()*6+1);

rows=(int)(Math.random()*5+1);

}

this.grid[cols][rows]=save[n];

n--;

}

mainFrame.setVisible(false);

pressInformation=false; //这里一定要将按钮点击信息归为初始

init();

for(int i = 0;i < 6;i++){

for(int j = 0;j < 5;j++ ){

if(grid[i+1][j+1]==0)

diamondsButton[i][j].setVisible(false);

}

}

}

public void estimateEven(int placeX,int placeY,JButton bz) {

if(pressInformation==false) {

x=placeX;

y=placeY;

secondMsg=grid[x][y];

secondButton=bz;

pressInformation=true;

}

else {

x0=x;

y0=y;

fristMsg=secondMsg;

firstButton=secondButton;

x=placeX;

y=placeY;

secondMsg=grid[x][y];

secondButton=bz;

if(fristMsg==secondMsg && secondButton!=firstButton){

xiao();

}

}

}

public void xiao() { //相同的情况下能不能消去。仔细分析,不一条条注释

if((x0==x &&(y0==y+1||y0==y-1)) || ((x0==x+1||x0==x-1)&&(y0==y))){ //判断是否相邻

remove();

}

else{

for (j=0;j<7;j++ ) {

if (grid[x0][j]==0){ //判断第一个按钮同行哪个按钮为空

if (y>j) { //如果第二个按钮的Y坐标大于空按钮的Y坐标说明第一按钮在第二按钮左边

for (i=y-1;i>=j;i-- ){ //判断第二按钮左侧直到第一按钮中间有没有按钮

if (grid[x][i]!=0) {

k=0;

break;

}

else{ k=1; } //K=1说明通过了第一次验证

}

if (k==1) {

linePassOne();

}

}

if (y
<j){ 如果第二个按钮的y坐标小于空按钮的y坐标说明第一按钮在第二按钮右边
for (i=y+1;i<=j ;i++ ){ //判断第二按钮左侧直到第一按钮中间有没有按钮

if (grid[x][i]!=0){

k=0;

break;

}

else { k=1; }

}

if (k==1){

linePassOne();

}

}

if (y==j ) {

linePassOne();

}

}

if (k==2) {

if (x0==x) {

remove();

}

if (x0
<x) {
for (n=x0;n<=x-1;n++ ) {

if (grid[n][j]!=0) {

k=0;

break;

}

if(grid[n][j]==0 && n==x-1) {

remove();

}

}

}

if (x0>x) {

for (n=x0;n>=x+1 ;n-- ) {

if (grid[n][j]!=0) {

k=0;

break;

}

if(grid[n][j]==0 && n==x+1) {

remove();

}

}

}

}

}

for (i=0;i<8;i++ ) { //列

if (grid[i][y0]==0) {

if (x>i) {

for (j=x-1;j>=i ;j-- ) {

if (grid[j][y]!=0) {

k=0;

break;

}

else { k=1; }

}

if (k==1) {

rowPassOne();

}

}

if (x
<i) {
for (j=x+1;j<=i;j++ ) {

if (grid[j][y]!=0) {

k=0;

break;

}

else { k=1; }

}

if (k==1) {

rowPassOne();

}

}

if (x==i) {

rowPassOne();

}

}

if (k==2){

if (y0==y) {

remove();

}

if (y0
<y) {
for (n=y0;n<=y-1 ;n++ ) {

if (grid[i][n]!=0) {

k=0;

break;

}

if(grid[i][n]==0 && n==y-1) {

remove();

}

}

}

if (y0>y) {

for (n=y0;n>=y+1 ;n--) {

if (grid[i][n]!=0) {

k=0;

break;

}

if(grid[i][n]==0 && n==y+1) {

remove();

}

}

}

}

}

}

}

public void linePassOne(){

if (y0>j){ //第一按钮同行空按钮在左边

for (i=y0-1;i>=j ;i-- ){ //判断第一按钮同左侧空按钮之间有没按钮

if (grid[x0][i]!=0) {

k=0;

break;

}

else { k=2; } //K=2说明通过了第二次验证

}

}

if (y0
<j){ 第一按钮同行空按钮在与第二按钮之间
for (i=y0+1;i<=j ;i++){

if (grid[x0][i]!=0) {

k=0;

break;

}

else{ k=2; }

}

}

}

public void rowPassOne(){

if (x0>i) {

for (j=x0-1;j>=i ;j-- ) {

if (grid[j][y0]!=0) {

k=0;

break;

}

else { k=2; }

}

}

if (x0
<i) {
for (j=x0+1;j<=i ;j++ ) {

if (grid[j][y0]!=0) {

k=0;

break;

}

else { k=2; }

}

}

}

public void remove(){

firstButton.setVisible(false);

secondButton.setVisible(false);

fraction();

pressInformation=false;

k=0;

grid[x0][y0]=0;

grid[x][y]=0;

}

public void actionPerformed(ActionEvent e) {

if(e.getSource()==newlyButton){

int grid[][] = new int[8][7];

this.grid = grid;

randomBuild();

mainFrame.setVisible(false);

pressInformation=false;

init();

}

if(e.getSource()==exitButton)

System.exit(0);

if(e.getSource()==resetButton)

reload();

for(int cols = 0;cols < 6;cols++){

for(int rows = 0;rows < 5;rows++ ){

if(e.getSource()==diamondsButton[cols][rows])

estimateEven(cols+1,rows+1,diamondsButton[cols][rows]);

}

}

}

public static void main(String[] args) {

lianliankan llk = new lianliankan();

llk.randomBuild();

llk.init();

}

}

//old 998 lines

//new 318 lines

参考资料:http://zhidao.baidu.com/question/36439800.html?fr=qrl3

阅读更多 >>>  java软件开发工具,Java软件开发的软件环境和开发工具分别是什么?

java实验报告

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class Test {
public static void main(String[] args) {
int n ;
List

list;

list = new ArrayList

() ;

while(list.size()<10){

n = (int)(Math.random()*100) ;

if(n >= 2 && n<100){

list.add(n) ;

}

}

Iterator

iter ;

for(iter = list.iterator() ;iter.hasNext();){

int x = iter.next() ;

boolean b = true ;

for(int j = 2 ;j <= Math.sqrt(x); j++){

if(x%j == 0){

b = false ;

}

}

if(b){

System.out.println("随机数:" + x + " 是素数") ;

}

else{

System.out.println("随机数:" + x + " 不是素数") ;

}

}

}

}

测试结果1:

随机数:33 不是素数

随机数:49 不是素数

随机数:56 不是素数

随机数:29 是素数

随机数:84 不是素数

随机数:2 是素数

随机数:37 是素数

随机数:15 不是素数

随机数:80 不是素数

随机数:50 不是素数

测试结果2:

随机数:12 不是素数

随机数:26 不是素数

随机数:59 是素数

随机数:83 是素数

随机数:38 不是素数

随机数:9 不是素数

随机数:51 不是素数

随机数:51 不是素数

随机数:96 不是素数

随机数:44 不是素数

实验1

Java开发工具及程序设计初步

实验目的

?

能够搭建Java的开发环境

?

熟悉常用的JDK操作命令的使用

?

熟悉Java程序的编写和编译过程

?

了解常用Java开发工具的使用

实验内容

实验练习1:搭建和使用JDK

1.JDK的下载和安装

JDK是SUN公司免费在网上发布的,我们可以进入SUN公司的网站(http://java.sun.com)下载并安装。JDK安装完成后,进行如下操作:

(1)查看并写出JDK的安装目录______________________________;

(2)查看主目录bin文件夹中常用的JDK命令文件,写出java、javac等JDK命令所在的文件目录_________________________________;

(3)在Windows中打开一个命令行窗口,打开命令行窗口的方法有两种:

?选择“开始”→“所有程序”→“附件”→“命令提示符”

?选择“开始”→“运行…”命令,在打开的“运行”窗口中输入“cmd”命令并“确定”。

(4)在打开的命令行窗口中,分别执行java和javac命令,如:C:\>java

查看执行结果,看是否输出如下的java命令的帮助信息(如图1-1所示)。

图1-1:java命令的帮助信息

C:\>javac

查看执行结果,看是否输出如下的javac命令的帮助信息(如图1-2所示)。

图1-2:javac命令的帮助信息

如果上面的信息均能输出,说明JDK的安装成功,基本上可正常使用。

2.操作系统环境变量的使用

操作系统的环境变量是在操作系统中定义的变量,可被该操作系统上运行的程序访问。JDK中主要有两个相关的操作系统环境变量,即path和classpath。

(1)查看操作系统环境变量

?在命令行窗口中执行set命令

如:C:\>set

查看set命令的输出结果,在set命令的输出结果中可看到许多等式,其中等号的左边是环境变量的名称,等号的右边是环境变量的取值。

命令:set

,可查看指定的某个环境变量的设置情况。

执行命令:C:\>set

path,查看path变量的设置情况。

?在“环境变量”窗口中查看环境变量

用鼠标右键单击“我的电脑”,选择“属性”命令,在打开的“系统属性”对话框中选择“高级”→“环境变量”,打开“环境变量”窗口。

在“环境变量”窗口中,有用户变量和系统变量两种环境变量。其中,用户环境变量只对某个用户起作用;系统环境变量对该系统上的所有用户都有效。

当我们以某一用户身份登录Windows时,它所使用的变量是系统变量和用户变量的总和。

如果一个变量在系统变量窗口和用户变量窗口都进行了设置,那么这个变量的取值在一般情况下为系统变量的取值与用户变量的取值相加;但有时也会出现用户变量的取值覆盖系统变量取值的情况。不管是什么情况,最终都以在命令行窗口中通过set命令查看到的结果为准。

(2)设置系统的环境变量

?在命令窗口中执行set命令

格式:set

变量名=[变量值]

执行如下命令,查看执行结果。

C:\>set

Xx=aa

//新建一个环境变量并设置其取值

C:\>set

Xx

//查看该环境变量

C:\>set

Xx=

//取消环境变量的设置

C:\>set

//查看环境变量

注意:在命令行窗口中设置的环境变量,只在该命令行窗口中起作用。

?在“环境变量”窗口中进行设置

可使用“新建”或“编辑”按钮。

注意:①

在“环境变量”窗口中设置的环境变量对以后所有的应用程序和命令行窗口都起作用,但不会影响原来运行的应用程序和启动的命令行窗口。



在“用户环境变量”窗口中进行的设置需要在注销重新登录后才起作用。

(3)path环境变量的作用和设置

环境变量path的值指定了JDK命令搜索路径,即当我们要执行某个命令时,操作系统首先会在当前目录下查找这个命令,如果当前目录下没有这个命令程序,操作系统会沿着path环境变量中所指定的目录依次去查找这个命令文件,并以最先找到的为准。

观察path变量的取值情况,path变量可以有多个取值,每个值代表一条搜索路径,它们之间用“;”分隔。

在命令行窗口中执行如下命令:

C:\>set

path

//查看path环境变量

C:\>set

path=

或set

path=C:\

//取消path变量的设置或重新设置path的值

C:\>set

path

C:\>java

或javac

//执行java或javac命令

会出现如下错误信息(如图1-3所示):

图1-3:错误信息

分析错误的原因:_____________________________________________________

改正的方法:__________________________________

实验练习2:Java程序的编写与编译过程

1.一个简单的Java程序的编写与编译

第一步:先在磁盘上创建保存程序文件的目录(文件夹),如:D:\javawork\lesson1。

第二步:在“记事本”中创建并编辑Java源程序文件Test1.java,程序代码如下:

class

Test1

{

}

保存文件,扩展名为.java。

第三步:在命令行窗口中,对源文件Test1.java进行编译。

可参考如下命令:

如果当前盘当前目录为C:\,先将当前目录设置为D:\javawork\lesson1。

C:\>d:

D:\>cd

ja*w*

D:\javawork>cd

le*

D:\javawork\lesson1>javac

Test1.java

如果编译成功,则不出现任何提示,回到命令提示符状态下。打开保存源文件的文件夹,查看编译生成的字节码文件Test1.class。

第四步:运行字节码文件Test1.class。

D:\javawork\lesson1>java

Test1

执行结果出现异常,如图1-4所示。

图1-4:执行出现异常

出现异常的原因是:缺少执行应用程序的入口main方法。main方法的声明必须是public

static

void

main(String

args[]){}。修改源程序代码并重新编译,源程序代码如下:

class

Test1

{

public

static

void

main(String

args[])

{

}

}

编译完成后,执行字节码文件。

在main方法中,添加输出的语句并重新编译执行,程序代码如下:

class

Test1

{

public

static

void

main(String

args[])

{

System.out.println("Hello

World!");

}

}

输出结果如图1-5所示。

图1-5:程序执行结果

2.classpath环境变量的作用与设置

环境变量calsspath用于指定Java类的路径,即设置classpath的作用是告诉Java运行系统的类加载器到哪里去寻找要执行的类。

在前面打开的命令行窗口中继续执行以下命令:

D:\>java

Test1

执行结果如图1-6所示:

图1-6:改变当前目录后重新执行的结果

会发现程序执行出现异常:无法找到Test1类。说明在classpath变量中没有将Test1.class文件所在的目录设置为搜索路径,在命令行窗口中执行命令:

D:\>set

classpath=%classpath%;d:\javawork\lesson1

重新执行程序,则运行结果正常。

调试练习

本节中的程序Test2.java不能正确地编译,修改所有的语法错误,使程序能够成功编译。程序编译之后,执行程序,比较输出结果与示例输出,然后排除所有可能的逻辑错误,示例输出演示了代码更正后程序的正确输出结果。

1.示例输出

2.错误的代码

//Test2.java

import

javax.swing.JOptionPane;

public

class

test2

{

public

static

void

main(string

args[])

{

JOptionPane.showMessageDialog(null,"Hello")

}

}

网站数据信息

"java程序设计课程报告,!高分跪求帮忙写一个简单小程序的JAVA课程设计报告(内详!!)"浏览人数已经达到22次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:java程序设计课程报告,!高分跪求帮忙写一个简单小程序的JAVA课程设计报告(内详!!)的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!