java实验汇总排完版[1](2)

2020-04-21 01:44

和。 */

package hmx.company; import java.util.*; public class Company {

ArrayList staff=new

ArrayList(5); public void addStaff(Staff st) {

staff.add(st); }

public void deleteStaff(String name) {

Iterator it=staff.iterator();

while(it.hasNext()) {

Staff st=it.next();

if(st.name.equals(name))

{ staff.remove(st); break; } } }

public double showSalary(String name) {

double salary=0.0; Iterator it=staff.iterator();

while(it.hasNext()) {

Staff st=it.next();

if(st.name.equals(name))

{

} salary=st.getSalary(); } } HourStaff.java } /*3)子类:小时工类 return salary; 属性: } 工作的小时,每小时工资。 public double

方法:

getAllSalary()

1. 设置工作的小时 {

double salary=0.0; 2. 设置每小时的工资。

3. 重写计算工资方法: Iterator

it=staff.iterator(); 小时工没有基本工资,他 while(it.hasNext()) 的工资就是工作的小时* { 每小时工资。*/ Staff package hmx.company; st=it.next(); public class HourStaff extends Staff salary+=st.getSalary(); { } int hour; return salary; double hour_salary; } public } HourStaff(String name,int Staff.java hour,double hour_salary) /*2)定义一个抽象员工类 {

属性: 姓名,基本工资 super(name); 抽象方法:计算工资。*/ this.hour=hour;

package hmx.company;

public abstract class Staff this.hour_salary=hour_sal

ary; {

} String name;

void double basic_salary;

public abstract double hour_salary(double

hour_salary) getSalary()

public Staff(String {

name)

this.hour_salary=hour {

_salary; this.name=name;

} }

double public Staff(String public

getSalary() name,double

{ basic_salary)

return {

hour*hour_salary; this.name=name;

}

this.basic_salary=basic}

Sellstaff.java _salary;

/*4)子类:销售员工类 属性:

销售的总金额 方法

1. 设置销售的总金额 2. 重写计算工资方法: 基本工资+提成。 提成的计算:

当销售额再10000 以下时,则提成10%,

等销售额再10000-100000之间是,则提成15%。 再 100000以上是,提成18%。*/

package hmx.company; public class Sellstaff extends Staff {

double money;

double extra_salary; public Sellstaff(String name,double

basic_salary,double money) {

super(name,basic_salary);

this.money=money; }

public double getSalary() {

//return

basic_salary+extra_salary;

if (money <10000) {

extra_salary=money*0.1; } else

if(money<100000 && getSalary() money>10000) { { if (hour>196) { extra_salary=money*0 .15; salary=basic_salary+(hou } r-196)*200; else } if(money>100000) return salary; { } }

extra_salary=money*0Companytest.java .18; /*6)定义一个测试类,在 } main方法中生成 return 一个公司对象; basic_salary+extra_salary

一个小时工的对象,每小

;

时工资10,工作200 小时; }

一个小时工的对象,每小}

时工资10,工作 230小时; NormalStaff.java

/*5)子类: 普通员工类 一个销售员工的对象,基

本工资1000,销售额5000; 属性:

一个销售员工的对象,基工作的小时

本工资1000,销售额方法:

200000; 1. 设置工作的小时

2. 重写计算工资的方法: 一个普通员工对象,基本当每月工作的小时数超过工资1200,工作小时205

小时。 196 小时时,

超出的部分按每小时200 (注:员工的姓名可自行

) 元。 基本工资+(工作的拟定。

将以上员工对象加入公司小时-196)*200。*/

对象中, package hmx.company;

public class NomalStaff 然后调用公司对象的输出extends Staff 所有员工工资和的方法, { 查看该公司该月应该发的 int hour;

工资总和。*/

double salary;

package hmx.company;

public

public class Companytest

NomalStaff(String

{

name,int hour)

public static void

{

main(String args[])

super(name);

{

this.hour=hour;

Company com=new

}

Company();

public double

HourStaff hs1=new HourStaff(\张三\

HourStaff hs2=new HourStaff(\李四\ Sellstaff ss1=new Sellstaff(\李五\ Sellstaff ss2=new Sellstaff(\李六\

NomalStaff ns=new NomalStaff(\李七\ com.addStaff(hs1); com.addStaff(hs2); com.addStaff(ss1); com.addStaff(ss2); com.addStaff(ns); System.out.println(\工资和\} }

输出结果: 工资和44600.0

实验 AWT事件处理机制 一、实验目的

利用AWT中的事件处理机制完成图形用户界面与用户的交互。 二、实验要求

1.理解awt的事件处理机制,理解事件源、事件、事件监听器、事件处理者之间的关系。

2.掌握事件处理机制的编程方式。 三、实验内容

1. 制作如图所示的界面:

b.addActionListener(this);

this.add(t1); add(t2);

add(b);

在前两个文本框中输 add(t3); 入两个整数,点击“计算”, this.setVisible(true);

在最后一个文本框中显示 } 输入的两个整数的和。 public static void 注:按照事件处理机制main(String args[]) 的四种方式完成 {

(1) 事件源和监听器 new Test1();

} 在同一类中

void (2) 监听器和事件源 public

actionPerformed(ActionE

不在同一个类中

vent e)

(3) 监听器是事件源 {

所在类的内部类 int x1,x2; (4) 监听器是事件源

所在类的内部类 x1=Integer.parseInt(t1.get

Text()); Test1.java

import java.awt.*;

import java.awt.event.*; x2=Integer.parseInt(t2.getpublic class Test1 extends Text()); Frame implements

t3.setText(String.valueOf(ActionListener

x1+x2)); {

TextField t1,t2,t3;

//t3.setText(Integer.parseI Button b;

nt(t1.getText())+Integer.p public Test1()

arseInt(t2.getText())); {

} t1=new

} TextField(5);

Test2.java t2=new

import java.awt.*; TextField(5);

import java.awt.event.*; t3=new

public class Test2 extends TextField(10);

b=new Button(\计Frame

{ 算\

static TextField

this.setBounds(100,100,30t1,t2,t3;

Button b; 0,200);

this.setLayout(new public Test2()

{ FlowLayout());

t1=new

TextField(5); t2=new TextField(5); t3=new TextField(10);

b=new Button(\计算\

this.setBounds(100,100,300,200);

this.setLayout(new FlowLayout());

b.addActionListener(new Listener1());

this.add(t1); add(t2); add(b); add(t3);

this.setVisible(true); }

public static void main(String args[]) {

new Test2(); } } class Listener1 implements ActionListener {

public void actionPerformed(ActionEvent e) throws NumberFormatException {

int x1,x2; try {

x1=Integer.parseInt(Test2.t1.getText());

x2=Integer.parseInt(Test2.t2.getText());

Test2.t3.setText(String.valueOf(x1+x2)); }

catch(NumberFormatException e1) {

System.out.println(\请输入数据\

}

//static.t3.setText(Integer.parseInt(static.t1.getText())+Integer.parseInt(static.t2.getText())); } }

Test3.java

import java.awt.*;

import java.awt.event.*; public class Test3 extends Frame {

TextField t1,t2,t3; Button b; public Test3() {

t1=new TextField(5); t2=new TextField(5); t3=new TextField(10);

b=new Button(\计算\

this.setBounds(100,100,300,200);

this.setLayout(new FlowLayout());

b.addActionListener(new Listener1());

this.add(t1);

add(t2); add(b); add(t3);

this.setVisible(true); }

public static void main(String args[]) {

new Test3(); } class Listener1 implements ActionListener {

public void actionPerformed(ActionEvent e) {

int x1,x2; try {

x1=Integer.parseInt(t1.getText());

x2=Integer.parseInt(t2.getText());

t3.setText(String.valueOf(x1+x2)); }

catch(NumberFormatException e1) {

System.out.println(\请输入数据\ }

//t3.setText(Integer.parseInt(t1.getText())+Integer.parseInt(t2.getText())); } }

}

Test4.java

import java.awt.*;

import java.awt.event.*; public class Test4 extends Frame {

TextField t1,t2,t3; Button b; public Test4() {

t1=new TextField(5); t2=new TextField(5); t3=new TextField(10);

b=new Button(\计算\

this.setBounds(100,100,300,200);

this.setLayout(new FlowLayout());

b.addActionListener (

new ActionListener() {

public void actionPerformed(ActionEvent e) {

int x1,x2; try {

x1=Integer.parseInt(t1.getText());

x2=Integer.parseInt(t2.getText());

t3.setText(String.valueOf(x1+x2));

}

catch(NumberFormatException e1) {

System.out.println(\请输入数据\ }

//t3.setText(Integer.parseInt(t1.getText())+Integer.parseInt(t2.getText())); } });

this.add(t1); add(t2); add(b); add(t3);

this.addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e)

{

System.exit(0); } });

this.setVisible(true); }

public static void main(String args[]) {

new Test4(); } }

实验 JDBC数据库编程

一、实验目的

掌握JDBC操作数据

库的基本过程,熟练掌握Connection、Statement、ResultSet等使用方法。 二、实验要求

3.掌握加载数据库驱动程序的方法。 4.掌握建立数据库访问的一般步骤。 5.掌握Connection、Statement、ResultSet的使用方法。

6.以Access为例,建立数据源的连接。 三、实验内容

1.在Access中建立一个教师表:

表结构包括的字段有:姓名、年龄、性别、职称、毕业院校、基本工资等信息。

编程实现以下功能: (1) 插入某一教师的具体信息。 (2) 修改某一教师的职称和基本工资。 (3) 检索职称为“讲师”的所有教师信息。 (4) 倒序输出所有教师的基本信息。 DBTest.java /*1.在Access中建立一个教师表:

表结构包括的字段有:姓名、年龄、性别、职称、毕业院校、基本工资等信息。

编程实现以下功能: (3) 检索职称为“讲师”的所有教师信息。*/ import java.sql.*;


java实验汇总排完版[1](2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:四川师范大学研究生随机过程试卷2012

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: