java2实用教程第4版_习题解答

合集下载

Java2课后选择题

Java2课后选择题

Java2实用教程(第4版)课后选择题整理(以下内容可能会出现少量错别字,望见谅)——by[小坏蛋~]第一章选择题(1)下列哪个是JDK提供的编译器?A. java.exeB.javac.exeC.javap.exeD. javaw.exe(2)下列哪个是Java应用程序主类中正确的main方法?A. public void main (String args[])B.static void main (String args[])C .public static void Main (String args[])D .public static void main (String args[])第二章.选择题(1)下列哪项字符序列可以作为标识符?A .trueB .default C. _int D.good-class(2)下列哪三项是正确的float变量的声明?A .float foo=-1;B .float foo=1.0;C .float foo=42e1; D. float foo=2.02f;E .float foo== 3.03d; F. float foo== 0x0123;(3)下列哪一项叙述是正确的?A. char型字符在Unicode表中的位置范围是0至32767B. char型字符在Unicode表中的位置范围是0至65535C. char型字符在Unicode表中的位置范围是0至65536D. char型字符在Unicode表中的位置范围是-32768至32767(4)以下哪两项是正确的char型变量的声明?A. char ch="R"; B .char ch='\\'C. char ch='ABCD';D. char ch="ABCD";E. char ch='\ucafc';F. char ch='\u10100'(5)下列程序中哪些[代码]是错误的?public class E{ public static void main(String args[]){ int x =8;byte b=127; //【代码1】b=x; /【代码2】x=12L; //【代码3】long y=8.0; //【代码4】float z=6.89; //【代码5】}}(6)对于int a[]=new int[3];下列哪个叙述是错误的?A. a.length的值是3。

Java2实用教程(第4版)实验指导与习题解答_IT168文库(精)

Java2实用教程(第4版)实验指导与习题解答_IT168文库(精)

上机实践1初识Java实验1一个简单的应用程序1.相关知识点Java语言的出现是源于对独立于平台语言的需要,即这种语言编写的程序不会因为芯片的变化而发生无法运行或出现运行错误的情况。

目前,随着网络的迅速发展,Java语言的优势越发明显,Java已经成为网络时代最重要的语言之一。

Sun公司要实现“编写一次,到处运行”(Write once,run anywhere的目标,就必须提供相应的Java运行平台,目前Java运行平台主要分为下列3个版本。

(1Java SE:称为Java标准版或Java 标准平台。

Java SE 提供了标准的JDK开发平台。

利用该平台可以开发Java桌面应用程序和低端的服务器应用程序,也可以开发Java Applet 程序。

当前成熟的新的JDK版本为JDK 1.6。

(2Java EE:称为Java企业版或Java企业平台。

使用J2EE可以构建企业级的服务应用,Java EE平台包含了Java SE平台,并增加了附加类库,以便支持目录管理、交易管理和企业级消息处理等功能。

(3Java ME:称为Java微型版或Java小型平台。

Java ME是一种很小的Java运行环境,用于嵌入式的消费产品中,如移动电话、掌上电脑或其他无线设备等。

无论上述哪种Java运行平台都包括了相应的Java虚拟机(Java Virtual Machine,虚拟机负责将字节码文件(包括程序使用的类库中的字节码加载到内存,然后采用解释方式来执行字节码文件,即根据相应硬件的机器指令翻译一句执行一句。

J2SE平台是学习掌握Java语言的最佳平台,而掌握J2SE又是进一步学习J2EE和J2ME所必需的。

2.实验目的本实验的目的是让学生掌握开发Java应用程序的三个步骤:编写源文件、编译源文件和运行应用程序。

3.实验要求编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,欢迎学习Java”和“We are students”。

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

Java程序设计实用教程(第4版)习题解答与实验指导叶核亚编著2013年11月目录“Java程序设计”课程教学要求 (1)第1章Java概述 (3)第2章Java语言基础 (5)第3章类的封装、继承和多态 (22)第4章接口、内部类和Java API基础 (37)第5章异常处理 (42)第6章图形用户界面 (44)第7章多线程 (49)第8章输入/输出流和文件操作 (51)“Java程序设计”课程教学要求1. 课程性质、目的和任务程序设计是高等学校计算机学科及电子信息学科各专业本科的核心专业基础课程,是培养学生软件设计能力的重要课程。

在计算机学科的本科教学中,起着非常重要的作用。

“Java程序设计”是计算机科学与技术专业本科的专业基础限选课,开设本课程的目的是:进行程序设计和面向对象方法的基础训练;使用Java编程技术,设计解决操作系统、网络通信、数据库等多种实际问题的应用程序。

本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,培养综合应用程序的设计能力。

本课程的先修课程包括:C/C++程序设计I、C/C++程序设计II、数据结构、操作系统、计算机网络、数据库原理等。

2. 教学基本要求本课程的基本要求如下。

①了解Java语言特点,理解Java Application应用程序的运行原理和方法。

掌握在JDK 环境中编译和运行程序的操作,熟悉在MyEclipse集成开发环境中,编辑、编译、运行和调试程序的操作。

②掌握Java语言中语句、数组、引用类型等基本语法成分的使用方法,通过类、接口、内嵌类型、包、异常处理等机制表达和实现面向对象程序设计思想。

③掌握Java的多种实用技术,包括图形用户界面、多线程、文件操作和流、使用URL 和Socket进行网络通信等。

④熟悉Java JDBC数据库应用的设计方法。

Java2课后选择题

Java2课后选择题

Java2课后选择题Java2课后选择题Java2实用教程(第4版)课后选择题整理(以下内容可能会出现少量错别字,望见谅)――by[小坏蛋~]第一章选择题(1)下列哪个是JDK提供的编译器?A. java.exeB.javac.exeC.javap.exeD. javaw.exe(2)下列哪个是Java应用程序主类中正确的main方法?A. public void main (String args[])B.static void main (String args[])C .public static void Main (String args[])D .public static void main (String args[])第二章.选择题(1)下列哪项字符序列可以作为标识符?A .trueB .default C. _int D.good-class(2)下列哪三项是正确的float变量的声明?A .float foo=-1;B .float foo=1.0;C .float foo=42e1; D. float foo=2.02f;E .float foo== 3.03d; F. float foo== 0x0123;(3)下列哪一项叙述是正确的?A. char型字符在Unicode表中的位置范围是0至__B. char型字符在Unicode表中的位置范围是0至__C. char型字符在Unicode表中的位置范围是0至__D. char型字符在Unicode表中的位置范围是-__至__(4)以下哪两项是正确的char型变量的声明?A. char ch=“R"; B .char ch='\\'C. char ch='ABCD';D. char ch="ABCD";E. char ch='\ucafc';F. char ch='\u__'(5)下列程序中哪些[代码]是错误的?public class E{ public static void main(String args[]){ int x =8;byte b=127; //【代码1】b=x; /【代码2】x=12L; //【代码3】long y=8.0; //【代码4】float z=6.89; //【代码5】}Java2课后选择题}(6)对于int a[]=new int;下列哪个叙述是错误的?A. a.length的值是3。

《java2实用教程》(第四版)课后答案 第九章-第十三章

《java2实用教程》(第四版)课后答案 第九章-第十三章

Java作业4(第九章---第十三章)第九章3.1.1程序代码import java.awt.*;import javax.swing.event.*;import javax.swing.*;import java.awt.event.*;public class kehou31 {public static void main(String args[]) {Computer fr=new Computer();}}class Computer extends JFrame implements DocumentListener { JTextArea text1,text2;int count=1;double sum=0,aver=0;Computer() {setLayout(new FlowLayout());text1=new JTextArea(6,20);text2=new JTextArea(6,20);add(new JScrollPane(text1));add(new JScrollPane(text2));text2.setEditable(false);(text1.getDocument()).addDocumentListener(this);setSize(300,320);setVisible(true);validate();setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);}public void changedUpdate(DocumentEvent e) {String s=text1.getText();String []a =s.split("[^0123456789.]+");sum=0;aver=0;for(int i=0;i<a.length;i++) {try { sum=sum+Double.parseDouble(a[i]);}catch(Exception ee) {}}count=a.length;aver=sum/count;text2.setText(null);text2.append("\n和:"+sum);text2.append("\n平均值:"+aver);}public void removeUpdate(DocumentEvent e){changedUpdate(e); }public void insertUpdate(DocumentEvent e){changedUpdate(e);}}3.1.2 运行界面3.2.1程序代码import java.awt.*;import javax.swing.event.*;import javax.swing.*;import java.awt.event.*;public class kehou932 {public static void main(String args[]) {ComputerFrame fr=new ComputerFrame();fr.setBounds(100,100,650,120);fr.setTitle("多功能计算器");fr.setBackground(Color.blue);}}class ComputerFrame extends JFrame implements ActionListener {JTextField text1,text2,text3;JButton buttonAdd,buttonSub,buttonMul,buttonDiv;JLabel label;public ComputerFrame() {setLayout(new FlowLayout());text1=new JTextField(10);text2=new JTextField(10);text3=new JTextField(10);label=new JLabel(" ",JLabel.CENTER);label.setBackground(Color.green);add(text1);add(label);add(text2);add(text3);buttonAdd=new JButton("加");buttonSub=new JButton("减");buttonMul=new JButton("乘");buttonDiv=new JButton("除");add(buttonAdd);add(buttonSub);add(buttonMul);add(buttonDiv);buttonAdd.addActionListener(this);buttonSub.addActionListener(this);buttonMul.addActionListener(this);buttonDiv.addActionListener(this);setSize(300,320);setVisible(true);validate();setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); }public void actionPerformed(ActionEvent e) {double n;if(e.getSource()==buttonAdd) {double n1,n2;try{ n1=Double.parseDouble(text1.getText()); n2=Double.parseDouble(text2.getText()); n=n1+n2;text3.setText(String.valueOf(n));label.setText("+");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==buttonSub) {double n1,n2;try{ n1=Double.parseDouble(text1.getText()); n2=Double.parseDouble(text2.getText()); n=n1-n2;text3.setText(String.valueOf(n));label.setText("-");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==buttonMul){double n1,n2;try{ n1=Double.parseDouble(text1.getText()); n2=Double.parseDouble(text2.getText()); n=n1*n2;text3.setText(String.valueOf(n));label.setText("*");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}else if(e.getSource()==buttonDiv){double n1,n2;try{ n1=Double.parseDouble(text1.getText()); n2=Double.parseDouble(text2.getText()); n=n1/n2;text3.setText(String.valueOf(n));label.setText("/");}catch(NumberFormatException ee){ text3.setText("请输入数字字符");}}validate();}}3.2.2运行界面3.3.1 程序代码import java.awt.*;import java.awt.event.*;import javax.swing.*;public class kehou933 {public static void main(String args[]){Window win = new Window();win.setTitle("使用MVC结构");win.setBounds(100,100,420,260);}}class Window extends JFrame implements ActionListener { Lader lader; //模型JTextField textAbove,textBottom,textHeight; //视图 JTextArea showArea; //视图JButton controlButton; //控制器Window() {init();setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}void init() {lader = new Lader();textAbove = new JTextField(5);textBottom = new JTextField(5);textHeight = new JTextField(5);showArea = new JTextArea();controlButton=new JButton("计算面积");JPanel pNorth=new JPanel();pNorth.add(new JLabel("上底:"));pNorth.add(textAbove);pNorth.add(new JLabel("下底:"));pNorth.add(textBottom);pNorth.add(new JLabel("高:"));pNorth.add(textHeight);pNorth.add(controlButton);controlButton.addActionListener(this);add(pNorth,BorderLayout.NORTH);add(new JScrollPane(showArea),BorderLayout.CENTER);}public void actionPerformed(ActionEvent e) {try{double above = Double.parseDouble(textAbove.getText().trim());double bottom = Double.parseDouble(textBottom.getText().trim());double height = Double.parseDouble(textHeight.getText().trim());lader.setAbove(above) ;lader.setBottom(bottom);lader.setHeight(height);double area = lader.getArea();showArea.append(" 梯形的面积:"+area+"\n");}catch(Exception ex) {showArea.append("\n"+ex+"\n");}}}class Lader {double above,bottom,height;public double getArea() {double area = (above+bottom)*height/2.0;return area;}public void setAbove(double a) {above = a;}public void setBottom(double b) {bottom = b;}public void setHeight(double c) {height = c; }}3.3.2运行界面第十章4.1.1程序代码import java.io.*;public class E {public static void main(String args[]) {File f=new File("E.java");;try{ RandomAccessFile random=new RandomAccessFile(f,"rw");random.seek(0);long m=random.length();while(m>=0) {m=m-1;random.seek(m);int c=random.readByte();if(c<=255&&c>=0)System.out.print((char)c);else {m=m-1;random.seek(m);byte cc[]=new byte[2];random.readFully(cc);System.out.print(new String(cc));} }}catch(Exception exp){} }}4.1.2运行界面4.2.1程序代码import java.io.*;public class E {public static void main(String args[ ]) {File file=new File("E.java");File tempFile=new File("temp.txt");try{ FileReader inOne=new FileReader(file);BufferedReader inTwo= new BufferedReader(inOne);FileWriter tofile=new FileWriter(tempFile);BufferedWriter out= new BufferedWriter(tofile);String s=null;int i=0;s=inTwo.readLine();while(s!=null) {i++;out.write(i+" "+s);out.newLine();s=inTwo.readLine();}inOne.close();inTwo.close();out.flush();out.close();tofile.close();}catch(IOException e){}}}4.3.1程序代码import java.io.*;import java.util.*;public class kehou1043 {public static void main(String args[]) {File file = new File("a.txt");Scanner sc = null;double sum=0;int count = 0;try { sc = new Scanner(file);eDelimiter("[^0123456789.]+");while(sc.hasNext()){try{ double price = sc.nextDouble(); count++;sum = sum+price;System.out.println(price);}catch(InputMismatchException exp){String t = sc.next();}}System.out.println("平均价格:"+sum/count); }catch(Exception exp){System.out.println(exp);}}}4.3.2运行界面第十一章2.1.1程序代码import java.sql.*;import java.util.*;public class kehou1121 {public static void main(String args[]) {Query query=new Query();String dataSource="myData";String tableName="goods";Scanner read=new Scanner(System.in);System.out.print("输入数据源名:");dataSource = read.nextLine();System.out.print("输入表名:");tableName = read.nextLine();query.setDatasourceName(dataSource);query.setTableName(tableName);query.setSQL("SELECT * FROM "+tableName);query.inputQueryResult();}}class Query {String datasourceName=""; //数据源名String tableName=""; //表名String SQL; //SQL语句public Query() {try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); }catch(ClassNotFoundException e) {System.out.print(e);}}public void setDatasourceName(String s) {datasourceName = s.trim();}public void setTableName(String s) {tableName = s.trim();}public void setSQL(String SQL) {this.SQL = SQL.trim();}public void inputQueryResult() {Connection con;Statement sql;ResultSet rs;try {String uri = "jdbc:odbc:"+datasourceName;String id = "";String password = "";con = DriverManager.getConnection(uri,id,password);DatabaseMetaData metadata = con.getMetaData();ResultSet rs1 = metadata.getColumns(null,null,tableName,null);int字段个数 = 0;while(rs1.next()) {字段个数++;}sql = con.createStatement();//创建SQL语句rs = sql.executeQuery(SQL);//执行SQL语句while(rs.next()) {for(int k=1;k<=字段个数;k++) {System.out.print(" "+rs.getString(k)+" ");}System.out.println("");}con.close();}catch(SQLException e) {System.out.println("请输入正确的表名"+e);}}}2.1.2运行界面2.2.1程序代码import java.sql.*;import java.util.*;public class kehou1122 {public static void main(String args[]) {Q query = new Q();String dataSource = "myData";String tableName = "goods";query.setDatasourceName(dataSource);query.setTableName(tableName);String name = "";Scanner read=new Scanner(System.in);System.out.print("商品名:");name = read.nextLine();String str="'%["+name+"]%'";String SQL = "SELECT * FROM "+tableName+" WHERE name LIKE "+str; query.setSQL(SQL);System.out.println(tableName+"表中商品名是"+name+"的记录");query.inputQueryResult();}}class Q {String datasourceName=""; //数据源名String tableName=""; //表名String SQL; //SQL语句public Q() {try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e) {System.out.print(e);}}public void setDatasourceName(String s) {datasourceName = s.trim();}public void setTableName(String s) {tableName = s.trim();}public void setSQL(String SQL) {this.SQL = SQL.trim();}public void inputQueryResult() {Connection con;Statement sql;ResultSet rs;try {String uri = "jdbc:odbc:"+datasourceName;String id = "";String password = "";con = DriverManager.getConnection(uri,id,password);DatabaseMetaData metadata = con.getMetaData();ResultSet rs1 = metadata.getColumns(null,null,tableName,null);int字段个数 = 0;while(rs1.next()) {字段个数++;}sql = con.createStatement();rs = sql.executeQuery(SQL);while(rs.next()) {for(int k=1;k<=字段个数;k++) {System.out.print(" "+rs.getString(k)+" ");}System.out.println("");}con.close();}catch(SQLException e) {System.out.println("请输入正确的表名"+e);}}}2.2.2运行界面2.3.1程序代码import java.sql.*;import java.util.*;public class kehou1123 {public static void main(String args[]) {Q1 query = new Q1();String dataSource = "myData";String tableName = "goods";query.setDatasourceName(dataSource);query.setTableName(tableName);String SQL = "SELECT * FROM "+tableName+" ORDER BY madeTime";query.setSQL(SQL);System.out.println(tableName+"表记录按商品生产日期前后排序是: "); query.inputQueryResult();}}class Q1 {String datasourceName=""; //数据源名String tableName=""; //表名String SQL; //SQL语句public Q1() {try{ Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}catch(ClassNotFoundException e) {System.out.print(e);}}public void setDatasourceName(String s) {datasourceName = s.trim();}public void setTableName(String s) {tableName = s.trim();}public void setSQL(String SQL) {this.SQL = SQL.trim();}public void inputQueryResult() {Connection con;Statement sql;ResultSet rs;try {String uri = "jdbc:odbc:"+datasourceName;String id = "";String password = "";con = DriverManager.getConnection(uri,id,password);DatabaseMetaData metadata = con.getMetaData();ResultSet rs1 = metadata.getColumns(null,null,tableName,null);int字段个数 = 0;while(rs1.next()) {字段个数++;}sql = con.createStatement();rs = sql.executeQuery(SQL);while(rs.next()) {for(int k=1;k<=字段个数;k++) {System.out.print(" "+rs.getString(k)+" ");}System.out.println("");}con.close();}catch(SQLException e) {System.out.println("请输入正确的表名"+e);}}}2.3.2运行界面第十二章4.1.1程序代码public class kehou1241{public static void main(String args[]) {Cinema a=new Cinema();a.zhang.start();a.sun.start();a.zhao.start();}}class TicketSeller //负责卖票的类。

Java2课后选择题

Java2课后选择题

Java2课后选择题Java2课后选择题Java2实用教程(第4版)课后选择题整理(以下内容可能会出现少量错别字,望见谅)――by[小坏蛋~]第一章选择题(1)下列哪个是JDK提供的编译器?A. java.exeB.javac.exeC.javap.exeD. javaw.exe(2)下列哪个是Java应用程序主类中正确的main方法?A. public void main (String args[])B.static void main (String args[])C .public static void Main (String args[])D .public static void main (String args[])第二章.选择题(1)下列哪项字符序列可以作为标识符?A .trueB .default C. _int D.good-class(2)下列哪三项是正确的float变量的声明?A .float foo=-1;B .float foo=1.0;C .float foo=42e1; D. float foo=2.02f;E .float foo== 3.03d; F. float foo== 0x0123;(3)下列哪一项叙述是正确的?A. char型字符在Unicode表中的位置范围是0至__B. char型字符在Unicode表中的位置范围是0至__C. char型字符在Unicode表中的位置范围是0至__D. char型字符在Unicode表中的位置范围是-__至__(4)以下哪两项是正确的char型变量的声明?A. char ch=“R"; B .char ch='\\'C. char ch='ABCD';D. char ch="ABCD";E. char ch='\ucafc';F. char ch='\u__'(5)下列程序中哪些[代码]是错误的?public class E{ public static void main(String args[]){ int x =8;byte b=127; //【代码1】b=x; /【代码2】x=12L; //【代码3】long y=8.0; //【代码4】float z=6.89; //【代码5】}Java2课后选择题}(6)对于int a[]=new int;下列哪个叙述是错误的?A. a.length的值是3。

Java程序设计实用教程第4版习题解答与实验指导第1-8章

Java程序设计实用教程第4版习题解答与实验指导第1-8章

Java程序设计实用教程(第4版)习题解答与实验指导叶核亚编著2013年11月目录“Java程序设计”课程教学要求 (1)第1章Java概述 (3)第2章Java语言基础 (5)第3章类的封装、继承和多态 (22)第4章接口、内部类和Java API基础 (37)第5章异常处理 (42)第6章图形用户界面 (44)第7章多线程 (49)第8章输入/输出流和文件操作 (51)“Java程序设计”课程教学要求1. 课程性质、目的和任务程序设计是高等学校计算机学科及电子信息学科各专业本科的核心专业基础课程,是培养学生软件设计能力的重要课程。

在计算机学科的本科教学中,起着非常重要的作用。

“Java程序设计”是计算机科学与技术专业本科的专业基础限选课,开设本课程的目的是:进行程序设计和面向对象方法的基础训练;使用Java编程技术,设计解决操作系统、网络通信、数据库等多种实际问题的应用程序。

本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,培养综合应用程序的设计能力。

本课程的先修课程包括:C/C++程序设计I、C/C++程序设计II、数据结构、操作系统、计算机网络、数据库原理等。

2. 教学基本要求本课程的基本要求如下。

①了解Java语言特点,理解Java Application应用程序的运行原理和方法。

掌握在JDK 环境中编译和运行程序的操作,熟悉在MyEclipse集成开发环境中,编辑、编译、运行和调试程序的操作。

②掌握Java语言中语句、数组、引用类型等基本语法成分的使用方法,通过类、接口、内嵌类型、包、异常处理等机制表达和实现面向对象程序设计思想。

③掌握Java的多种实用技术,包括图形用户界面、多线程、文件操作和流、使用URL 和Socket进行网络通信等。

④熟悉Java JDBC数据库应用的设计方法。

Java程序设计实用教程第4版习题解答与实验指导第18章

Java程序设计实用教程第4版习题解答与实验指导第18章

Java程序设计实用教程(第4版)习题解答及实验指导叶核亚编著2019年11月目录“Java程序设计”课程教学要求 (1)第1章 Java概述 (4)第2章 Java语言基础 (6)第3章类的封装、继承和多态 (28)第4章接口、内部类和 Java API基础 (47)第5章异常处理 (53)第6章图形用户界面 (56)第7章多线程 (62)第8章输入/输出流和文件操作 (65)“Java程序设计”课程教学要求1. 课程性质、目的和任务程序设计是高等学校计算机学科及电子信息学科各专业本科的核心专业基础课程,是培养学生软件设计能力的重要课程。

在计算机学科的本科教学中,起着非常重要的作用。

“Java程序设计”是计算机科学及技术专业本科的专业基础限选课,开设本课程的目的是:进行程序设计和面向对象方法的基础训练;使用Java编程技术,设计解决操作系统、网络通信、数据库等多种实际问题的应用程序。

本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,培养综合应用程序的设计能力。

本课程的先修课程包括:C/C++程序设计I、C/C++程序设计II、数据结构、操作系统、计算机网络、数据库原理等。

2. 教学基本要求本课程的基本要求如下。

①了解Java语言特点,理解Java Application应用程序的运行原理和方法。

掌握在JDK环境中编译和运行程序的操作,熟悉在MyEclipse集成开发环境中,编辑、编译、运行和调试程序的操作。

②掌握Java语言中语句、数组、引用类型等基本语法成分的使用方法,通过类、接口、内嵌类型、包、异常处理等机制表达和实现面向对象程序设计思想。

③掌握Java的多种实用技术,包括图形用户界面、多线程、文件操作和流、使用URL和Socket进行网络通信等。

④熟悉Java JDBC数据库应用的设计方法。

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

Java程序设计实用教程(第4版)习题解答与实验指导叶核亚编著2013年11月目录“Java程序设计”课程教学要求 (1)第1章Java概述 (3)第2章Java语言基础 (5)第3章类的封装、继承和多态 (22)第4章接口、内部类和Java API基础 (37)第5章异常处理 (42)第6章图形用户界面 (44)第7章多线程 (49)第8章输入/输出流和文件操作 (51)“Java程序设计”课程教学要求1. 课程性质、目的和任务程序设计是高等学校计算机学科及电子信息学科各专业本科的核心专业基础课程,是培养学生软件设计能力的重要课程。

在计算机学科的本科教学中,起着非常重要的作用。

“Java程序设计”是计算机科学与技术专业本科的专业基础限选课,开设本课程的目的是:进行程序设计和面向对象方法的基础训练;使用Java编程技术,设计解决操作系统、网络通信、数据库等多种实际问题的应用程序。

本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,培养综合应用程序的设计能力。

本课程的先修课程包括:C/C++程序设计I、C/C++程序设计II、数据结构、操作系统、计算机网络、数据库原理等。

2. 教学基本要求本课程的基本要求如下。

①了解Java语言特点,理解Java Application应用程序的运行原理和方法。

掌握在JDK 环境中编译和运行程序的操作,熟悉在MyEclipse集成开发环境中,编辑、编译、运行和调试程序的操作。

②掌握Java语言中语句、数组、引用类型等基本语法成分的使用方法,通过类、接口、内嵌类型、包、异常处理等机制表达和实现面向对象程序设计思想。

③掌握Java的多种实用技术,包括图形用户界面、多线程、文件操作和流、使用URL 和Socket进行网络通信等。

④熟悉Java JDBC数据库应用的设计方法。

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

Java程序设计实用教程(第4版)习题解答与实验指导叶核亚编著2013年11月目录“Java程序设计”课程教学要求 (1)第1章Java概述 (3)第2章Java语言基础 (5)第3章类的封装、继承和多态 (22)第4章接口、内部类和Java API基础 (37)第5章异常处理 (42)第6章图形用户界面 (44)第7章多线程 (49)第8章输入/输出流和文件操作 (51)“Java程序设计”课程教学要求1. 课程性质、目的和任务程序设计是高等学校计算机学科及电子信息学科各专业本科的核心专业基础课程,是培养学生软件设计能力的重要课程。

在计算机学科的本科教学中,起着非常重要的作用。

“Java程序设计”是计算机科学与技术专业本科的专业基础限选课,开设本课程的目的是:进行程序设计和面向对象方法的基础训练;使用Java编程技术,设计解决操作系统、网络通信、数据库等多种实际问题的应用程序。

本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,培养综合应用程序的设计能力。

本课程的先修课程包括:C/C++程序设计I、C/C++程序设计II、数据结构、操作系统、计算机网络、数据库原理等。

2. 教学基本要求本课程的基本要求如下。

①了解Java语言特点,理解Java Application应用程序的运行原理和方法。

掌握在JDK 环境中编译和运行程序的操作,熟悉在MyEclipse集成开发环境中,编辑、编译、运行和调试程序的操作。

②掌握Java语言中语句、数组、引用类型等基本语法成分的使用方法,通过类、接口、内嵌类型、包、异常处理等机制表达和实现面向对象程序设计思想。

③掌握Java的多种实用技术,包括图形用户界面、多线程、文件操作和流、使用URL 和Socket进行网络通信等。

④熟悉Java JDBC数据库应用的设计方法。

《JAVA大学实用教程》(第四版)课后习题答案

《JAVA大学实用教程》(第四版)课后习题答案

《JAVA大学实用教程》(第四版)课后习题答案第一章Java 语言概述2.“java编译器将源文件编译为的字节码文件是机器码”这句话正确吗?答:不正确3.j ava 应用程序的主类必须含有怎样的方法?答:含有main 方法4。

“java 应用程序必须有一个类是public 类”这句话正确吗?答;不正确,只能有一个public 类5。

“java Applet 程序的主类必须是public 类”这句话正确吗?答:正确,因为java Applet 主类必须是Applet 类的子类并且是public 的类6。

请叙述java 源程序的命名规则。

答:与public 的类同名。

7。

源文件生成的字节码文件在运行时都加载到内存中吗?答:非也,动态随需要运行才加载。

8.面向对象的程序设计语言有那些基本特征?答:封装;继承;多态性。

9.在Java 程序中有多个类文件时,用Java 命令应该运行那个类?答:具有main 方法的类第二章基本数据类型和数组4。

下列哪些语句是错的?Int x=120;Byte b=120;b=x;答:B=x;错应为b=(byte)x5。

下列哪些语句是错的?答:y=d;错,应y=(float)d6。

下列两个语句是等价的吗?Char x=97;Char x=‘a’;答:是等价的。

7。

下列system.out.printf 语句输出结果是什么?Int a=97;Byte b1=(byte)128;Byte b2=(byte)(-129);System.out.printf(“%c,%d,%d”,a,b1,b2);如果输出语句改为:System.out.printf(“%d,%d,%d”,a,b1,b2);输出什么?答:输出a ,-128,127修改后输出97,-128,1278.数组是基本数据类型吗?怎样获取数组的长度?答:不是基本数据类型,是复合数据类型。

可以通过:数组名.length 的方法获得数组长度9。

《java2实用教程》(第四版)课后答案 第四章-第六章

《java2实用教程》(第四版)课后答案 第四章-第六章

《JA V A实用教程》作业2 第四章习题4.1程序代码(1)CPU.javapublic class CPU {int speed;void setSpeed(int m){this.speed=m;}int getSpeed(){return this.speed;}}(2)HardDisk.javapublic class HardDisk {int amount;void setAmount(int a){this.amount=a;}int getAmount(){return this.amount;}}(3)pc.javapublic class PC {CPU cpu;HardDisk HD;void setCPU(CPU x){cpu=x;}void setHardDisk(HardDisk h){HD=h;}void show(){System.out.print("CPU的速度是:");System.out.println(" "+this.cpu.getSpeed());System.out.print("硬盘的大小是:");System.out.println(" "+this.HD.getAmount()); }}(4)TEST.javapublic class TEST {public static void main(String[] args) { CPU c=new CPU();c.setSpeed(2200);HardDisk disk=new HardDisk();disk.setAmount(200);PC pc=new PC();pc.setCPU(c);pc.setHardDisk(disk);pc.show();}}4.2 运行界面第五章习题5.1程序代码(1)package模拟器;public class Animal {void cry(){};String getAnimalName() {return null;}}(2)package模拟器;public class Simulator {Animal ani;void playSound(Animal x){x.cry();System.out.println("这是"+x.getAnimalName()+"的叫声!"); }}(3)package模拟器;public class Dog extends Animal {void cry(){System.out.println("汪汪汪!");};String getAnimalName(){return ("Dog");};}(4)package模拟器;public class Cat extends Animal {void cry(){System.out.println("喵喵喵!");};String getAnimalName(){return ("Cat");};}(5)package模拟器;public class Application {public static void main(String[] args) {Simulator s=new Simulator();s.playSound(new Dog());s.playSound(new Cat());}}5.2运行结果第六章习题6.1程序代码(1)package模拟器;public class Animal {void cry(){};String getAnimalName() {return null;}}(2)package模拟器;public class Simulator {Animal ani;void playSound(Animal x){x.cry();System.out.println("这是"+x.getAnimalName()+"的叫声!"); }}(3)package模拟器;public class Dog extends Animal {void cry(){System.out.println("汪汪汪!");};String getAnimalName(){return ("Dog");};}(4)package模拟器;public class Cat extends Animal {void cry(){System.out.println("喵喵喵!");};String getAnimalName(){return ("Cat");};}(5)package模拟器;public class Application {public static void main(String[] args) {Simulator s=new Simulator();s.playSound(new Dog());s.playSound(new Cat());}}6.2运行结果。

Java-2实用教程习题解答

Java-2实用教程习题解答

Java-2实⽤教程习题解答习题解答习题1(第1章)⼀、问答题1.Java语⾔的主要贡献者是谁?2.开发Java应⽤程序需要经过哪些主要步骤?3.Java源⽂件是由什么组成的?⼀个源⽂件中必须要有public类吗?4.如果JDK的安装⽬录为D:\jdk,应当怎样设置path和classpath的值?5.Java源⽂件的扩展名是什么?Java字节码的扩展名是什么?6.如果Java应⽤程序主类的名字是Bird,编译之后,应当怎样运⾏该程序?7.有哪两种编程风格,在格式上各有怎样的特点?1.James Gosling2.需3个步骤:1)⽤⽂本编辑器编写源⽂件。

2)使⽤javac编译源⽂件,得到字节码⽂件。

3)使⽤解释器运⾏程序。

3.源⽂件由若⼲个类所构成。

对于应⽤程序,必须有⼀个类含有public static void main(String args[])的⽅法,含有该⽅法的类称为应⽤程序的主类。

不⼀定,但⾄多有⼀个public类。

4.set classpath=D:\jdk\jre\lib\;.;5. java和class6. java Bird7.独⾏风格(⼤括号独占⾏)和⾏尾风格(左⼤扩号在上⼀⾏⾏尾,右⼤括号独占⾏)⼆、选择题1.B。

2.D。

1.下列哪个是JDK提供的编译器?A)B)C)D)2.下列哪个是Java应⽤程序主类中正确的main⽅法?A) public void main (String args[ ])B) static void main (String args[ ])C) public static void Main (String args[])D) public static void main (String args[ ])三、阅读程序阅读下列Java源⽂件,并回答问题。

public class Person {void speakHello() {"您好,很⾼兴认识您");" nice to meet you");}}class Xiti {public static void main(String args[]) {Person zhang = new Person();();}}(a)上述源⽂件的名字是什么?(b)编译上述源⽂件将⽣成⼏个字节码⽂件?这些字节码⽂件的名字都是什么?(c)在命令⾏执⾏java Person得到怎样的错误提⽰?执⾏java xiti得到怎样的错误提⽰?执⾏java 得到怎样的错误提⽰?执⾏java Xiti得到怎样的输出结果?1.(a)。

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

《Java程序设计实用教程(第4版)习题解答与实验指导》第1~8章

Java程序设计实用教程(第4版)习题解答与实验指导叶核亚编著2013年11月目录“Java程序设计”课程教学要求 (1)第1章Java概述 (3)第2章Java语言基础 (5)第3章类的封装、继承和多态 (22)第4章接口、内部类和Java API基础 (37)第5章异常处理 (42)第6章图形用户界面 (44)第7章多线程 (49)第8章输入/输出流和文件操作 (51)“Java程序设计”课程教学要求1. 课程性质、目的和任务程序设计是高等学校计算机学科及电子信息学科各专业本科的核心专业基础课程,是培养学生软件设计能力的重要课程。

在计算机学科的本科教学中,起着非常重要的作用。

“Java程序设计”是计算机科学与技术专业本科的专业基础限选课,开设本课程的目的是:进行程序设计和面向对象方法的基础训练;使用Java编程技术,设计解决操作系统、网络通信、数据库等多种实际问题的应用程序。

本课程通过全面、系统地介绍Java语言的基础知识、运行机制、多种编程方法和技术,使学生理解和掌握面向对象的程序设计方法,理解和掌握网络程序的特点和设计方法,建立起牢固扎实的理论基础,培养综合应用程序的设计能力。

本课程的先修课程包括:C/C++程序设计I、C/C++程序设计II、数据结构、操作系统、计算机网络、数据库原理等。

2. 教学基本要求本课程的基本要求如下。

①了解Java语言特点,理解Java Application应用程序的运行原理和方法。

掌握在JDK 环境中编译和运行程序的操作,熟悉在MyEclipse集成开发环境中,编辑、编译、运行和调试程序的操作。

②掌握Java语言中语句、数组、引用类型等基本语法成分的使用方法,通过类、接口、内嵌类型、包、异常处理等机制表达和实现面向对象程序设计思想。

③掌握Java的多种实用技术,包括图形用户界面、多线程、文件操作和流、使用URL 和Socket进行网络通信等。

④熟悉Java JDBC数据库应用的设计方法。

3《JAVA2实用教程》(第四版)课后答案 第七章 第八章

3《JAVA2实用教程》(第四版)课后答案 第七章 第八章
Java 程序设计 第三次作业
第 7 章习题 4.1 程序代码 import java.util.*; public class SUMANDAVERAGE {
public static void main(String[] args) { Scanner reader=new Scanner(System.in); double sum=0; int m=0; while(reader.hasNextDouble()){ double x=reader.nextDouble(); assert x>=0&&x<=100:"该数是非法的成绩数据!"; m=m+1; sum=sum+x; } System.out.printf("%d个数的和为%f\n", m,sum); System.out.printf("%d个数的平均值为%f\n",m,sum/m);
Scanner hit=new Scanner(System.in); int x=reader.nextInt(); switch(x) { case 0: break; case 1: System.out.print("请输入一个字符串:");
String s=hit.nextLine();String s2=s.toUpperCase();System.out.println("小写 字母转换成大写字母后:"+s.toUpperCase());
try{ double price=scanner.nextDouble();
sum=sum+price; System.out.println(price); } catch(InputMismatchException exp) {

java第四版课后习题答案

java第四版课后习题答案

java第四版课后习题答案
Java第四版课后习题答案
在学习Java编程语言的过程中,课后习题是巩固知识、加深理解的重要环节。

本文将为大家提供Java第四版课后习题的答案,希望能够帮助大家更好地掌握Java编程语言。

第一章
1.1 什么是Java虚拟机?它的作用是什么?
Java虚拟机是Java程序的运行环境,它的作用是将Java字节码翻译成特定平台的机器码,从而实现跨平台的特性。

1.2 什么是Java应用程序?它的特点是什么?
Java应用程序是一种可以在Java虚拟机上运行的程序,它的特点是跨平台、面向对象、安全性高。

1.3 什么是Java开发工具包(JDK)?它包含哪些组件?
Java开发工具包是用于开发Java程序的工具集合,它包含Java编译器、Java 虚拟机、Java类库等组件。

第二章
2.1 什么是变量?Java中有哪些基本数据类型?
变量是用来存储数据的容器,Java中的基本数据类型包括整型、浮点型、字符型、布尔型。

2.2 什么是常量?Java中如何定义常量?
常量是不可改变的值,Java中可以使用关键字final来定义常量。

2.3 什么是运算符?Java中有哪些运算符?
运算符是用来进行数学运算或逻辑运算的符号,Java中包括算术运算符、关系运算符、逻辑运算符等。

通过对这些课后习题的答案的学习,相信大家对Java编程语言会有更深入的理解和掌握。

希望大家能够在学习的过程中不断积累知识,不断提升自己的编程能力。

java2实用教程第4版答案

java2实用教程第4版答案
}
}
2.public class Xiti2{
public static void main(String args[]){
int i,j;
for(j=2;j<=100;j++){
for(i=2;i<=j/2;i++){
if(j%i==0)
break;
}பைடு நூலகம்
if(i>j/2){
System.out.print(" "+j);
for(sum=0,i=1,a=1;i<=20;i++) {
a=a*(1.0/i);
sum=sum+a;
}
System.out.println("使用for循环计算的sum="+sum);
}
}
4.publicclass Xiti4 {
public static void main(String args[]) {
int m=8,item=m,i=1;
long sum=0;
for(i=1,sum=0,item=m;i<=10;i++){
sum=sum+item;
item=item*10+m;
}
System.out.println(sum);
}
}
6.public classXiti6{
public static void main(String args[]){
System.out.println((int)'你');
System.out.println((int)'我');

java2实用教程第4版-习题解答

java2实用教程第4版-习题解答

java2实用教程第4版-习题解答习题解答习题一(第1章)一、问答题1.James Gosling2.需3个步骤:1)用文本编辑器编写源文件。

2)使用javac编译源文件,得到字节码文件。

3)使用解释器运行程序。

3.由类所构成,应用程序必须有一个类含有public static void main(String args[])方法,含有该方法的类称为应用程序的主类。

不一定,但最多有一个public类。

4.set classpath=D:\jdk\jre\lib\rt.jar;.;5. java和class6. java Bird7. 独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题1.B。

2.D。

三、阅读程序1.(a)Person.java。

(b)两个字节码,分别是Person.class和Xiti.class。

(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴认识您nice to meet you”习题二(第2章)一、问答题1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。

标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。

false不是标识符。

2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。

不是关键字。

class implements interface enum extends abstract。

3.boolean,char,byte,short,int,long,float,System.out.print(" "+c);}}习题三(第3章)一、问答题1.boolean2.不可以3.boolean4. 不是必须的5.结束while语句的执行6.可以二、选择题1.A。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

习题解答习题一(第1章)一、问答题1.James Gosling2.需3个步骤:1)用文本编辑器编写源文件。

2)使用javac编译源文件,得到字节码文件。

3)使用解释器运行程序。

3.由类所构成,应用程序必须有一个类含有public static void main(String args[])方法,含有该方法的类称为应用程序的主类。

不一定,但最多有一个public类。

4.set classpath=D:\jdk\jre\lib\rt.jar;.;5.java和class6. java Bird7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题1.B。

2.D。

三、阅读程序1.(a)Person.java。

(b)两个字节码,分别是Person.class和Xiti.class。

(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError: Xiti/class”,得到“您好,很高兴认识您nice to meet you”习题二(第2章)一、问答题1.用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。

标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。

false不是标识符。

2.关键字就是Java语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来用。

不是关键字。

class implements interface enum extends abstract。

3.boolean,char,byte,short,int,long,float,double。

4.float常量必须用F或f为后缀。

double常量用D或d为后缀,但允许省略后缀。

5.一维数组名.length。

二维数组名.length。

二、选择题1.C。

2.ADF。

3.B。

4.BE。

5.【代码2】【代码3】【代码4】【代码5】。

6.B。

三、阅读或调试程序1.属于操作题,解答略。

2.属于操作题,解答略。

3.属于操作题,解答略。

4.【代码1】:4。

【代码2】:b[0]=1。

5.【代码1】:40。

【代码2】:7四、编写程序1. public class E {public static void main(String args[]) {System.out.println((int)'你');System.out.println((int)'我');System.out.println((int)'他');}}2. public class E {public static void main (String args[ ]) {char cStart='α',cEnd='ω';for(char c=cStart;c<=cEnd;c++)System.out.print(" "+c);}}习题三(第3章)一、问答题1.boolean2.不可以3.boolean4. 不是必须的5.结束while语句的执行6.可以二、选择题1.A。

2.C。

3.C。

三、阅读程序1.你,苹,甜2.Jeep好好3.x=-5,y=-1四、编程序题1.public class Xiti1 {public static void main(String args[]) {double sum=0,a=1;int i=1;while(i<=10) {sum=sum+a;i++;a=a*i;}System.out.println("sum="+sum);}}2.public class Xiti2 {public static void main(String args[]) {int i,j;for(j=2;j<=100;j++) {for(i=2;i<=j/2;i++) {if(j%i==0)break;}if(i>j/2) {System.out.print(" "+j);}}}}3.class Xiti3 {public static void main(String args[]) {double sum=0,a=1,i=1;do { sum=sum+a;i++;a=(1.0/i)*a;}while(i<=20);System.out.println("使用do-while循环计算的sum="+sum);for(sum=0,i=1,a=1;i<=20;i++) {a=a*(1.0/i);sum=sum+a;}System.out.println("使用for循环计算的sum="+sum);}}4.public class Xiti4 {public static void main(String args[]) {int sum=0,i,j;for(i=1;i<=1000;i++) {for(j=1,sum=0;j<i;j++) {if(i%j==0)sum=sum+j;}if(sum==i)System.out.println("完数:"+i);}}}5.public class Xiti5 {public static void main(String args[]) {int m=8,item=m,i=1;long sum=0;for(i=1,sum=0,item=m;i<=10;i++) {sum=sum+item;item=item*10+m;}System.out.println(sum);}}6.public class Xiti6 {public static void main(String args[]) {int n=1;long sum=0;while(true) {sum=sum+n;n++;if(sum>=8888)break;}System.out.println("满足条件的最大整数:"+(n-1));}}习题四(第4章)一、问答题1. 封装、继承和多态。

2.当类名由几个单词复合而成时,每个单词的首字母使用大写。

3.名字的首单词的首字母使用小写,如果变量的名字由多个单词组成,从第2个单词开始的其它单词的首字母使用大写。

4.属性5.行为6.用类创建对象时。

没有类型7.用类创建对象时。

8.一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同,或者是参数的类型不同。

可以。

9.可以。

不可以。

10.不可以。

11.一个类通过使用new运算符可以创建多个不同的对象,不同的对象的实例变量将被分配不同的内存空间。

所有对象的类变量都分配给相同的一处内存,对象共享类变量。

12.代表调用当前方法的对象。

不可以。

二、选择题1.B。

2.D。

3.D。

4.D。

5.CD。

6.【代码1】【代码4】。

7.【代码4】。

三、阅读程序1.【代码1】:1,【代码2】:121,【代码3】:121。

2.sum=-100。

3. 27。

4.【代码1】:100,【代码2】:20.0。

5.上机实习题目,解答略。

6.上机实习题目,解答略。

四、编程题CPU.javapublic class CPU {int speed;int getSpeed() {return speed;}public void setSpeed(int speed) {this.speed = speed;}}HardDisk.javapublic class HardDisk {int amount;int getAmount() {return amount;}public void setAmount(int amount) {this.amount = amount;}}PC.javapublic class PC {CPU cpu;HardDisk HD;void setCPU(CPU cpu) {this.cpu = cpu;}void setHardDisk(HardDisk HD) {this.HD = HD;}void show(){System.out.println("CPU速度:"+cpu.getSpeed());System.out.println("硬盘容量:"+HD.getAmount());}}Test.javapublic class Test {public static void main(String args[]) {CPU cpu = new CPU();HardDisk HD=new HardDisk();cpu.setSpeed(2200);HD.setAmount(200);PC pc =new PC();pc.setCPU(cpu);pc.setHardDisk(HD);pc.show();}}习题五(第5章)一、问答题1.不可以。

2.是。

3.不继承。

4.声明与父类同名的成员变量。

5.子类重写的方法类型和父类的方法的类型一致或者是父类的方法的类型的子类型,重写的方法的名字、参数个数、参数的类型和父类的方法完全相同。

重写方法的目的是隐藏继承的方法,子类通过方法的重写可以把父类的状态和行为改变为自身的状态和行为。

6.不可以。

7.Abstract类。

8.上转型对象不能操作子类新增的成员变量,不能调用子类新增的方法。

上转型对象可以访问子类继承或隐藏的成员变量,可以调用子类继承的方法或子类重写的实例方法。

9.通过重写方法。

10.面向抽象编程目的是为了应对用户需求的变化,核心是让类中每种可能的变化对应地交给抽象类的一个子类类去负责,从而让该类的设计者不去关心具体实现。

二、选择题1.C。

2.D。

3.CD。

4.D。

5.B。

6.B。

7.D。

8.B。

9.A。

三、阅读程序1.【代码1】:15.0。

【代码2】:8.0。

2.【代码1】:11。

【代码2】:11。

3.【代码1】:98.0。

【代码2】:12。

【代码3】:98.0。

【代码4】:9。

4.【代码1】:120。

【代码2】:120。

【代码3】:-100。

四、编程题Animal.javapublic abstract class Animal {public abstract void cry();public abstract String getAnimalName();}Simulator.javapublic class Simulator {public void playSound(Animal animal) {System.out.print("现在播放"+animal.getAnimalName()+"类的声音:");animal.cry();}}Dog.javapublic class Dog extends Animal {public void cry() {System.out.println("汪汪...汪汪");}public String getAnimalName() {return "狗";}}Cat.javapublic class Cat extends Animal {public void cry() {System.out.println("喵喵...喵喵");}public String getAnimalName() {return "猫";}}Application.javapublic class Example5_13 {public static void main(String args[]) {Simulator simulator = new Simulator();simulator.playSound(new Dog());simulator.playSound(new Cat());}}习题六(第6章)一、问答题1.不能。

相关文档
最新文档