面向对象程序设计(java)》编程题库(含答案).doc

上传人:laozhun 文档编号:2387697 上传时间:2023-02-17 格式:DOC 页数:15 大小:64.50KB
返回 下载 相关 举报
面向对象程序设计(java)》编程题库(含答案).doc_第1页
第1页 / 共15页
面向对象程序设计(java)》编程题库(含答案).doc_第2页
第2页 / 共15页
面向对象程序设计(java)》编程题库(含答案).doc_第3页
第3页 / 共15页
面向对象程序设计(java)》编程题库(含答案).doc_第4页
第4页 / 共15页
面向对象程序设计(java)》编程题库(含答案).doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《面向对象程序设计(java)》编程题库(含答案).doc》由会员分享,可在线阅读,更多相关《面向对象程序设计(java)》编程题库(含答案).doc(15页珍藏版)》请在三一办公上搜索。

1、面向对象程序设计(Java)编程题库(含答案)1、已知数组a=4,67,32,78,56,13,90,48,22,编程实现求该数组最大值并输出的方法。2、编写程序实现求0150之间的奇数的乘积;3、已知类People里含有属性money初值是20,方法void work(int m)实现增加m到money里,定义它的子类ChinaPeople,重写方法void work(int m)实现把增加m到money里(体现汇率变化)。4、定义接口Worker,有一个方法login()实现打卡功能。定义该接口实现类ChinaWorker,给出login()的具体实现,只需输出“我来了!”即可。5、使用S

2、canner类实现从键盘输入一句英文,主程序实现把这句英文的单词按照字典顺序排序输出。6、使用Scanner类实现从键盘输入若干个双精度数,主程序实现把这些数求和输出。7、定义窗体,窗体上含有两个文本区,一个按钮,实现一个文本区内输入若干个整数,单击按钮后在另一个文本区内显示这些整数中奇数的个数,并输出所有奇数。8、编写类比如Circle实现模拟圆形,类中封装与圆有关的数据和方法(比如半径和获取面积),在主方法中定义一个对象,让这个对象操作自己的数据和方法输出相应结果。9、编写一个类People,含有两个属性String 类型的name和int类型的age,定义一个方法speak()输出这两个

3、属性。如“我是zhanghua,我今年12了”。 编写People的子类Boy,重写方法speak(),输出“我是男孩,我今年*”。 编写People的子类Girl,重写方法speak(),输出“我是女孩,我叫*“。编写主类,声明一个People的对象p。再依次创建Boy和Girl的对象Tom和Rose,分别给各自的属性赋值,最后使P成为Tom和Rose的上转型对象,分别调用speak()。10、编写程序实现,创建一个窗体,里面依次有一个标签,一个文本框,一个文本区,一个按钮。标签里面给提示信息如“请输入您的成绩:“,单击按钮实现在文本框里输入成绩后,在文本区给出及格与否的判断。11、编写一个

4、应用程序,该程序的窗口依次有一个标签(“请输入打开的文件名,含扩展名”),一个用于输入的文本框,一个文本区,一个按钮。用户在文本框输入一个文件的名字(包含扩展名),单击按钮,程序在文本区显示文件的内容。12、编写一个应用程序,该程序的窗口依次有一个标签(“请输入字符串”),一个用于输入的文本框,一个按钮。用户在文本框输入一个字符串,单击按钮,程序在控制台输出字符串的长度。13、假设工资单由 基础工资、岗位津贴、绩效津贴、医疗补助、独生子女补助等组成,比如一个典型的工资单如下:“基础工资:1500.00,岗位津贴:1000,绩效津贴:500,医疗补助:130.45,独生子女费:5。编写一个应用程

5、,要求使用StringTokenizer类编写算法输出该工资单的各项数值,并计算求工资总和。import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.ArrayList;import java.util.Arrays;import java.util.Iterator;import java.util.Scanner;import java.util.StringTokenizer;import javax.swing.JB

6、utton;import javax.swing.JFrame;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField;public class Test /* * param args */public static void main(String args) /* * 1、已知数组a=4,67,32,78,56,13,90,48,22,编程实现求该数组最大值并输出的方法。 */int a = 4,67,32,78,56,13,90,48,22;Arrays.sort

7、(a);System.out.println(该数组最大值为:+aa.length-1);/* * 2、编写程序实现求0150之间的奇数的乘积; */int product = 1;for(int i=0;i=0)String temp;temp = stri;stri = stri+1;stri+1 = temp;for(int i = 0;stri!=null;i+)System.out.println(stri);scanner.close();/* * 6、使用Scanner类实现从键盘输入若干个双精度数,主程序实现把这些数求和输出。 */Scanner reader = new Sc

8、anner(System.in);double sum = 0;int m = 0;while(reader.hasNextDouble()double x = reader.nextDouble();m = m+1;sum+=x;System.out.printf(%d个数的和为%fn,m,sum);reader.close();/* * 7、定义窗体,窗体上含有两个文本区,一个按钮,实现一个文本区内输入若干个整数, * 单击按钮后在另一个文本区内显示这些整数中奇数的个数,并输出所有奇数。 */WindowActionEvent win = new WindowActionEvent();P

9、oliseListener police = new PoliseListener();win.setMyCommandListener(police);win.setTitle(取得奇数);win.setBounds(400, 400, 400, 400);/第8题入口Circle circle = new Circle();circle.setR(20);double r = circle.getR();System.out.println(该圆的半径:+r+ 该圆的面积:+circle.getArea(r)+ 该圆的周长:+circle.getC(r);/* * 3、已知类People里

10、含有属性money初值是20, * 方法void work(int m)实现增加m到money里, * 定义它的子类ChinaPeople, * 重写方法void work(int m)实现把增加m到money里(体现汇率变化)。 */class Peopledouble money = 20;void work(int m)money = money + m;class ChinaPeople extends Peopledouble rate = 7.5;void work(int m)money = money + m*rate;/* * 4、定义接口Worker,有一个方法login(

11、)实现打卡功能。定义该接口实现类ChinaWorker,给出login()的具体实现,只需输出“我来了!”即可。 */interface Workervoid login();class ChinaWorker implements Workerpublic void login()System.out.println(我来了!);/7题监听class WindowActionEvent extends JFrameJTextField inputText;JTextArea textShow;JButton button;PoliseListener listener;public Wind

12、owActionEvent()init();setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);void init()setLayout(new FlowLayout();inputText = new JTextField(10);button = new JButton(提取奇数);textShow = new JTextArea(9,30);add(inputText);add(button);add(new JScrollPane(textShow);void setMyCommandListener(Poli

13、seListener listener)this.listener = listener;listener.setJTextField(inputText);listener.setJTextArea(textShow);inputText.addActionListener(listener);button.addActionListener(listener);class PoliseListener implements ActionListenerJTextField textInput;JTextArea textShow;public void setJTextField(JTex

14、tField text)textInput = text;public void setJTextArea(JTextArea area)textShow = area;public void actionPerformed(ActionEvent e) String str = textInput.getText();StringTokenizer analysis = new StringTokenizer(str, ,);int number = analysis.countTokens();int j = 0;trywhile(analysis.hasMoreTokens()Strin

15、g s = analysis.nextToken();int i = Integer.parseInt(s);if(i%2!=0)textShow.append(s+n);j+;textShow.append(共有+j+个奇数);catch(NumberFormatException e1)textShow.append(您输入了非整型数字或非数字型字符);/* * 8、编写类比如Circle实现模拟圆形,类中封装与圆有关的数据和方法(比如半径和获取面积),在主方法中定义一个对象,让这个对象操作自己的数据和方法输出相应结果。 */class Circlepublic static final

16、double PI = 3.1415926;private double r;private double area;private double c;public double getR() return r;public void setR(double r) this.r = r;public double getArea(double r) return area=PI*r*r;public double getC(double r) return c=2*PI*r;public class Test2 /* * param args */public static void main

17、(String args) People1 p;Boy Tom = new Boy(Tom,12);Girl Rose = new Girl(Rose,16);Tom.speak();Rose.speak();p = Tom;p.speak();p = Rose;p.speak();/* * 9、编写一个类People,含有两个属性String 类型的name和int类型的age,定义一个方法speak()输出这两个属性。如“我是zhanghua,我今年12了”。 编写People的子类Boy,重写方法speak(),输出“我是男孩,我今年*”。 编写People的子类Girl,重写方法spe

18、ak(),输出“我是女孩,我叫*“。编写主类,声明一个People的对象p。再依次创建Boy和Girl的对象Tom和Rose,分别给各自的属性赋值,最后使P成为Tom和Rose的上转型对象,分别调用speak()。 */class People1String name;int age;public People1(String name, int age) super();this.name = name;this.age = age;public void speak()System.out.println(我是+name+,我今年+age+了。);class Boy extends Peo

19、ple1public Boy(String name, int age) super(name, age);public void speak()System.out.println(我是男孩,我今年+age+了。);class Girl extends People1public Girl(String name, int age) super(name, age);public void speak()System.out.println(我是女孩,我叫+name+。);import java.awt.FlowLayout;import java.awt.event.ActionEvent

20、;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField;public class Test3 /* * param args */public static void main(String args) WindowEvent win = n

21、ew WindowEvent();MyListener listener = new MyListener();win.setMyListener(listener);win.setBounds(300, 300, 300,300);win.setTitle(第10题);/* * 10、编写程序实现,创建一个窗体,里面依次有一个标签,一个文本框,一个文本区,一个按钮。标签里面给提示信息如“请输入您的成绩:“,单击按钮实现在文本框里输入成绩后,在文本区给出及格与否的判断。 * */class WindowEvent extends JFrameJTextField text;JTextArea

22、area;JButton button;MyListener listener;public WindowEvent()init();setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);void init()setLayout(new FlowLayout();add(new JLabel(请输入您的成绩:);text = new JTextField(10);area = new JTextArea(30,30);button = new JButton(submit);add(text);add(button);a

23、dd(new JScrollPane(area);void setMyListener(MyListener listener)this.listener = listener;listener.setJTextField(text);listener.setJTextArea(area);text.addActionListener(listener);button.addActionListener(listener);class MyListener implements ActionListenerJTextField textInput;JTextArea textShow;publ

24、ic void setJTextField(JTextField text)textInput = text;public void setJTextArea(JTextArea area)textShow = area;public void actionPerformed(ActionEvent e) String str = textInput.getText();trydouble num = Double.parseDouble(str);if(num=60)textShow.append(您的成绩为:+num+ 及格);elsetextShow.append(您的成绩为:+num+

25、 不及格);catch(NumberFormatException e1)textShow.append(您输入的是非数字,请您核对后再次输入。);11题import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.IOException;import java.io.

26、Reader;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField;public class test4 /* * param args */public static void main(String args) Listener listener = new Listener();WindowEventActi

27、on win = new WindowEventAction(listener);win.setBounds(300, 300, 300, 300);win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);/* * 11、编写一个应用程序,该程序的窗口依次有一个标签(“请输入打开的文件名,含扩展名”), * 一个用于输入的文本框,一个文本区,一个按钮。用户在文本框输入一个文件的名字(包含扩展名) * ,单击按钮,程序在文本区显示文件的内容。 */class WindowEventAction extends JFrameJTextField tex

28、t;JTextArea area;JButton button;Listener listener;public WindowEventAction(Listener listener)text = new JTextField(10);area = new JTextArea(15,20);button = new JButton(submit);setLayout(new FlowLayout();add(new JLabel(请输入打开的文件名,含扩展名);add(text);add(button);add(new JScrollPane(area);setVisible(true);t

29、his.listener = listener;listener.setJTextField(text);listener.setJTextArea(area);text.addActionListener(listener);button.addActionListener(listener);class Listener implements ActionListenerJTextField text;JTextArea area;public void setJTextField(JTextField text)this.text = text;public void setJTextA

30、rea(JTextArea area)this.area = area;public void actionPerformed(ActionEvent e) String str = text.getText();File file = new File(str);char c = new char100;/Writer out = new FileWriter(file, true);try Reader in = new FileReader(file);int n = -1;while(n = in.read(c)!=-1)String s = new String(c);area.ap

31、pend(s); catch (FileNotFoundException e1) e1.printStackTrace(); catch (IOException e1) e1.printStackTrace();12题import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax

32、.swing.JScrollPane;import javax.swing.JTextArea;import javax.swing.JTextField;public class text5 /* * 12、编写一个应用程序,该程序的窗口依次有一个标签(“请输入字符串”),一个用于输入的文本框,一个按钮。用户在文本框输入一个字符串,单击按钮,程序在控制台输出字符串的长度。 */public static void main(String args) ActListener listener = new ActListener();WinEvent win = new WinEvent(lis

33、tener);win.setBounds(200, 200, 200, 200);win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);class WinEvent extends JFrameJTextField text;JButton button;ActListener listener;public WinEvent(ActListener listener)text = new JTextField(10);button = new JButton(submit);setLayout(new FlowLayout();add(new

34、JLabel(请输入字符串);add(text);add(button);setVisible(true);this.listener = listener;listener.setJTextField(text);text.addActionListener(listener);button.addActionListener(listener);class ActListener implements ActionListenerJTextField text;public void setJTextField(JTextField text)this.text = text;public

35、 void actionPerformed(ActionEvent e) System.out.println(text.getText();13题import java.util.Scanner;import java.util.StringTokenizer;public class test6 /* * 13、假设工资单由 基础工资、岗位津贴、绩效津贴、医疗补助、独生子女补助等组成,比如一个典型的工资单如下:“基础工资:1500.00,岗位津贴:1000,绩效津贴:500,医疗补助:130.45,独生子女费:5。” 编写一个应用程,要求使用StringTokenizer类编写算法输出该工

36、资单的各项数值,并计算求工资总和。 */public static void main(String args) String str = 基础工资:1500.00,岗位津贴:1000,绩效津贴:500,医疗补助:130.45,独生子女费:5。;String regex = D+;StringTokenizer analysis = new StringTokenizer(str,,。:基础工资岗位津贴绩效津贴医疗补助独生子女费);double sum = new double5;int i = 0;while(analysis.hasMoreTokens()String s = analysis.nextToken();System.out.println(s);sumi = Double.parseDouble(s);i+;double AllSum = 0;/for(int j = 0;jsum.length;j+)/AllSum+=sumi;/AllSum = sum0+sum1+sum2+sum3+sum4;System.out.println(工资综合为:+AllSum);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号