Java实验五

合集下载

java实验5图形用户界面设计试验

java实验5图形用户界面设计试验

java实验5图形⽤户界⾯设计试验常⽤布局1)、流布局: FlowLayout 从左到右,⾃上⽽下⽅式在容器中排列,控件的⼤⼩不会随容器⼤⼩变化.容器.setLayout(new FlowLayout(FlowLayout.LEFT));2)、⽹格布局: GridLayout 按照指定⾏数与列数,将容器分成⼤⼩相等的单元格每个单元格放置⼀个控件. 不能将控件放在指定单元格 容器.setLayout(new GridLayout(3,4,10,15));3)、边界布局: BorderLayout 将容器分成东、西、南、北、中五个部分 容器.setLayout(new BorderLayout()); 窗⼝的内容⾯板默认布局就是边界布局。

容器.add(控件,BorderLayout.NORTH);4)、混合布局: 使⽤JPanel,将多个布局组合在⼀起使⽤5)、绝对布局 null: 以坐标定位 容器.setLayout(null); 每个控件在放置在容器之前,必须设置其边界 setBounds(x,y,width,height); btn.setBounds(10,100,30,60);常⽤事件1)、事件源 EventSource:能够触发事件控件如:JButton,JTextField,JFrame,JComboBox,....2)、事件 Event:ActionEvent,KeyEvent,WindowEvent,TextEvent,...3)、事件侦听者Listener(接⼝) ActionListener,WindowListener,...class A implements ActionListener{public void actionPerformed(ActionEvent e){....}}A lis=new A();4)、事件处理函数public void actionPerformed(ActionEvent e){....}事件流程:事件源触发事件-->事件源侦听者接收事件-->⾃动调⽤相应事件处理函数.实践编程1.在应⽤程序窗体中安排1个⽂本框,⼀个标签。

JAVA语言实验指导

JAVA语言实验指导

JAVA语言实验指导《Java程序设计》课程实验指导书实验一熟悉Java编程环境和Java程序结构一、实验目的:通过简单的输入输出程序熟悉Java编程环境,认识Java程序结构。

二、实验内容:在JDK或者V isual J++环境下编写简单的输入输出程序。

三、实验要求:1. 接收一个键盘输入的字符;2. 输出一条简单的问候信息;3. 写出实验报告,要求对程序结构做出详细的解释。

四、实验学时:2学时五、实验步骤:1.进入Java编程环境;2. 新建一个Java文件,命名为inOut.java;3. 定义主方法static public void main(String[ ] args);在方法体中调用System.in.read方法接收一个键盘输入的字符;调用System.out.println()方法,使程序输出一条问候信息;4. 编译运行程序,观察运行情况和输出结果。

(如果使用JDK环境,调用javac.exe和java.exe编译和执行程序)六、选作实验编写Java Applet程序实现上述功能。

实验二 Java语言基础训练一、实验目的:熟悉Java基本语法,练习使用Java的数据类型和控制结构,实现简单的数据和字符串操作。

二、实验内容:编写Java程序,输出1900年到2000年之间的所有润年。

三、实验要求:1. 正确使用Java语言的控制结构;2. 从屏幕输出1900年到2000年之间的所有润年;3. 写出实验报告。

四、实验学时:2学时五、实验步骤:1.进入Java编程环境;2. 新建一个Java文件,命名为runY ear.java;3. 定义主方法,查找1900到2000年之间的润年,并输出它们;4. 编译运行程序,观察输出结果是否正确。

六、选作实验编写程序,查找一个字符串中是否包含指定的字符。

实验三面向对象基础熟悉Java类的结构,掌握类的定义、方法和属性的定义以及对象的实现,掌握类的继承。

java基础实验报告

java基础实验报告

java基础实验报告Java基础实验报告引言:Java作为一种面向对象的编程语言,广泛应用于软件开发领域。

本次实验旨在通过一系列的实验任务,加深对Java基础知识的理解,并掌握Java编程的基本技巧。

实验一:Java环境搭建在本实验中,我们首先需要搭建Java开发环境。

Java开发工具包(JDK)是进行Java编程的基础,我们可以从Oracle官网上下载并安装最新版本的JDK。

安装完成后,我们需要配置环境变量,以便在命令行中能够直接运行Java相关的命令。

实验二:Java语言基础Java语言基础是进行Java编程的基石。

在本实验中,我们需要掌握Java的基本语法规则、数据类型和运算符等。

通过编写简单的程序,如计算两个数的和、判断一个数是否为素数等,加深对Java语言基础的理解。

实验三:面向对象编程面向对象编程是Java的核心特性之一。

在本实验中,我们需要学习Java中的类和对象的概念,并通过编写简单的类和对象来实现一些功能。

例如,创建一个学生类,包含姓名、年龄和成绩等属性,并实现一些与学生相关的操作方法。

实验四:异常处理异常处理是Java编程中重要的一部分。

在本实验中,我们需要学习Java中的异常处理机制,并通过编写代码来处理可能出现的异常情况。

例如,通过try-catch语句来捕获并处理用户输入非法字符的异常。

实验五:文件操作在实际的软件开发中,文件操作是非常常见的需求。

在本实验中,我们需要学习Java中的文件操作相关的类和方法,并通过编写代码来实现文件的读取和写入等功能。

例如,读取一个文本文件中的内容,并将其写入到另一个文件中。

实验六:多线程编程多线程编程是提高程序性能和效率的一种方式。

在本实验中,我们需要学习Java中的多线程编程相关的知识,并通过编写代码来实现多线程的应用。

例如,创建多个线程来同时下载多个文件,并实现进度条的显示。

结论:通过完成以上一系列的实验任务,我们对Java基础知识有了更深入的理解,并掌握了Java编程的基本技巧。

java编程实验报告

java编程实验报告

java编程实验报告Java编程实验报告引言:Java是一种广泛应用于软件开发领域的高级编程语言,具有跨平台、面向对象、安全性高等特点。

本篇文章将介绍我在Java编程实验中的实践和收获。

实验一:Hello World程序在本实验中,我学习了如何使用Java编写一个简单的Hello World程序。

通过这个实验,我了解了Java的基本语法和程序结构。

在编写过程中,我发现Java的语法规范相对严格,需要注意语句的结束符号和代码的缩进。

通过运行程序,我成功输出了"Hello World"这个简单的字符串,这让我对Java编程的基本流程和语法有了更深入的了解。

实验二:变量与运算符在本实验中,我学习了Java中的变量和运算符的使用。

通过编写程序,我实现了对不同类型的变量进行声明和赋值,并进行基本的运算操作。

在这个过程中,我发现Java的变量需要先声明后使用,而且在进行运算时需要注意数据类型的匹配。

通过这个实验,我对Java中的变量和运算符有了更深入的理解。

实验三:条件语句与循环结构在本实验中,我学习了Java中的条件语句和循环结构的使用。

通过编写程序,我实现了对不同条件进行判断,并根据不同的条件执行相应的操作。

同时,我还学习了循环结构的使用,通过循环语句实现了对一段代码的重复执行。

在这个实验中,我发现条件语句和循环结构是Java编程中非常重要的部分,能够帮助程序实现更复杂的逻辑。

实验四:数组和字符串在本实验中,我学习了Java中数组和字符串的使用。

通过编写程序,我实现了对数组和字符串的声明、赋值和操作。

在这个过程中,我发现Java中的数组和字符串是一种非常方便的数据结构,能够帮助程序处理大量的数据。

通过这个实验,我对Java中数组和字符串的使用有了更深入的了解。

实验五:面向对象编程在本实验中,我学习了Java中的面向对象编程的基本概念和使用。

通过编写程序,我实现了对类的定义、对象的创建和方法的调用。

Java实验报告继承、多态、接口和异常处理

Java实验报告继承、多态、接口和异常处理

Java实验报告继承、多态、接⼝和异常处理实验5 继承、多态、接⼝和异常处理⼀、实验⽬的1、掌握Java的类和对象的声明和使⽤⽅法;2、掌握Java的类的继承和实现⽅法;3、掌握多态性在类的继承中的运⽤;4、掌握接⼝的定义与使⽤;5、掌握基本异常的处理机制;6、熟悉try语句与catch语句的搭配使⽤;7、了解有异常处理与没有异常处理的差别;8、多重catch语句的使⽤;9、使⽤Throws声明异常和Throw抛出异常。

⼆、实验环境1、PC微机;2、DOS操作系统或 Windows 操作系统;3、Java sdk程序开发环境、eclipse集成环境。

三、实验内容1. 设计三个类,分别是学⽣类Student,本科⽣类UnderGraduate,研究⽣类Postjgraduate,其中Student类是⼀个抽象类,它包含学⽣的基本信息如姓名、所学课程、课程成绩等,⽽Undergraduate类和Postgraduate类都是Student类的⼦类,这两个类计算课程成绩等级的⽅法有所不同,如下表所⽰。

假设某班级⾥既有研究⽣⼜有本科⽣,编写程序统计出全班学⽣2. 和Mobilephone具体实现,并设计⼀个应⽤程序类来使⽤这些类。

3.要求设计⼀个GUI图形窗⼝程序,该程序让⽤户输⼊⼀个星期中的任意⼀天的数字1-7,然后输出该数字所对应的是星期⼏。

四、实验步骤实验内容⼀1.建⽴package experiment5_1,其最终⽬录结构如下:2.建⽴Student类:package experiment5_1;public abstract class Student {final static int CourseNo = 3;String name;String type;int[] courses;String courseGrade;public Student(String name) {/doc/1bd4a299a66e58fafab069dc5022aaea998f41e2.html = name; courses = new int[CourseNo];courseGrade = "" ;}public abstract void calculateGrade();public String getName( ) {return name;}public String getType( ) {return type ;}public String getCourseGrade( ) {return courseGrade;}public int getCourseScore(int courseNumber) {return courses[courseNumber];}public void setName(String name) {/doc/1bd4a299a66e58fafab069dc5022aaea998f41e2.html = name;}public void setType(String type) {this.type = type;}public void setCourseScore(int courseNumber, int courseScore) { //按课程索引号设置课程成绩this.courses[courseNumber] = courseScore ;}}3.建⽴外部类(1)研究⽣类Postjgraduatepackage experiment5_1;public class postgraduate extends Student {public postgraduate(String name) {super(name);type = "研究⽣";}public void calculateGrade() {// TODO Auto-generated method stubint total = 0;double average = 0;for (int i = 0; i < CourseNo; i++) {total += courses[i];};average = total / CourseNo;if (average>=90&&average<100) courseGrade = "优秀"; else if (average>=80&&average<90) courseGrade = "良好"; else if (average>=70&&average<80) courseGrade = "⼀般"; else if (average>=60&&average<70) courseGrade = "及格"; else courseGrade = "不及格";}}(2)本科⽣类UnderGraduatepackage experiment5_1;public class undergraduate extends Student {public undergraduate(String name ) {super(name);type = "本科⽣";}public void calculateGrade() {int total = 0;double average = 0;for (int i = 0; i < CourseNo; i++) {total += getCourseScore(i) ;};average = total / CourseNo;if (average>=80&&average<100) courseGrade = "优秀"; else if (average>=70&&average<80) courseGrade = "良好"; else if (average>=60&&average<70) courseGrade = "⼀般"; else if (average>=50&&average<60) courseGrade = "及格"; else courseGrade = "不及格";}}4.编写代码测试函数package experiment5_1;public class polymorphism {public static void main(String[] args) {Student[] students = new Student[5];students[0] = new undergraduate("陈建平");students[1] = new undergraduate("鲁向东");students[2] = new postgraduate("匡晓华");students[3] = new undergraduate("周丽娜");students[4] = new postgraduate("梁欣欣");for (int i=0; i<5 ;i++) {students[i].setCourseScore(0,87);students[i].setCourseScore(1,90);students[i].setCourseScore(2,78);}for (int i=0; i<5 ;i++) {students[i].calculateGrade();}System.out.println("姓名" + " 类型" +" 成绩");System.out.println("-----------------------");for (int i=0; i<5 ;i++) {System.out.println(students[i].getName( )+" "+students[i].getType( )+" "+students[i].getCourseGrade( ));}}}实验内容⼆1.建⽴package experiment5_2,其最终⽬录结构如下:2.写接⼝Soundable代码:package experiment5_2;public interface Soundable {public void increaseV olume( );public void decreaseV olume( );public void stopSound( );public void playSound( );}3.创建三个类Radio、Walkman和Mobilephone具体实现,分别添加代码:// Mobilephone类package experiment5_2;class Mobilephone implements Soundable{public void increaseV olume( ) {System.out.println("增⼤⼿机⾳量");}public void decreaseV olume( ) {System.out.println("减⼩⼿机⾳量");}public void stopSound( ) {System.out.println("关闭⼿机");}public void playSound( ) {System.out.println("⼿机发出来电铃声");}}// Walkman类package experiment5_2;class Walkman implements Soundable { public void increaseV olume( ) { System.out.println("增⼤随声听⾳量"); }public void decreaseV olume( ) { System.out.println("减⼩随声听⾳量"); }public void stopSound( ) {System.out.println("关闭随声听");}public void playSound( ) {System.out.println("随声听发出⾳乐"); }}// Radio类package experiment5_2;class Radio implements Soundable{ public void increaseV olume( ) { System.out.println("增⼤收⾳机⾳量"); }public void decreaseV olume( ) { System.out.println("减⼩收⾳机⾳量"); }public void stopSound( ) {System.out.println("关闭收⾳机");}public void playSound( ) {System.out.println("收⾳机播放⼴播"); }}4.创建people类及编写测试代码://People类package experiment5_2;class People {public void listen(Soundable s) {s.playSound( );}}//测试代码package experiment5_2;import java.util.Scanner;public class InterfaceTest {public static void main(String[] args) {int i;People sportsman = new People( );Scanner scanner = new Scanner(System.in);Soundable[] soundDevice = new Soundable[3];//往声⾳设备数组中放⼊能发声的设备soundDevice[0] = new Radio( );soundDevice[1] = new Walkman( );soundDevice[2] = new Mobilephone();System.out.println("你想听什么? 请输⼊选择:0-收⾳机1-随声听2-⼿机");i = scanner.nextInt( );//开始听声⾳sportsman.listen(soundDevice[i]);soundDevice[i].increaseV olume( );soundDevice[i].stopSound();scanner.close();}}实验内容三1.建⽴package experiment5_3,其最终⽬录结构如下package experiment5_3;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class DateTransf extends JFrame implements KeyListener{/****/private static final long serialVersionUID = 1L;private static DateTransf frm;private static JTextField txt;private static JTextField data;DateTransf() {setTitle("数字与星期转换");setLocation(700, 300);setSize(400,130);}public static void main(String[] args) {frm = new DateTransf();frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frm.setLayout(new GridLayout(2,2));txt = new JTextField(12);data = new JTextField(12);JLabel lable1 = new JLabel("输⼊数字:");JLabel lable2 = new JLabel("星期⼏:");frm.add(lable1);txt.addKeyListener(frm);frm.add(txt);frm.add(lable2);frm.add(data);frm.setVisible(true);}public void keyPressed(KeyEvent e) {if (e.getSource() == txt) {if (e.getKeyCode() == KeyEvent.VK_ENTER) // 判断按下的键是否是回车键{try {int number = Integer.parseInt(txt.getText());switch (number) {case 1:data.setText("Mon");break;case 2:data.setText("Tue");break;case 3:data.setText("Wen");break;case 4:data.setText("Thu");break;case 5:data.setText("Fri");break;case 6:data.setText("Sat");break;case 7:data.setText("Sun");break;default:JOptionPane.showMessageDialog(null, "您输⼊的数字不是1~7","⽆效⽇期",/doc/1bd4a299a66e58fafab069dc5022aaea998f41e2.html RMATION_MESSAGE); break;}}catch (Exception e1) {// TODO: handle exceptionJOptionPane.showMessageDialog(null, "您输⼊的不是整数","⽆效⽇期",/doc/1bd4a299a66e58fafab069dc5022aaea998f41e2.html RMA TION_MESSAGE); }}}}public void keyReleased(KeyEvent e) {}public void keyTyped(KeyEvent e) {}}2.编译运⾏五、实验结果●实验内容⼀结果:●实验内容⼆结果:●实验内容三结果:六、实验⼩结1.这次实验的内容⽐较多,需要掌握Java的类和对象的声明和使⽤⽅法、Java的类的继承和实现⽅法、多态性在类的继承中的运⽤、接⼝的定义与使⽤、基本异常的处理机制、try语句与catch语句的搭配使⽤等等;2. 在实验过程中,重点是要区分好实例和类,灵活掌握类的调⽤。

攀枝花学院Java实验五 常用类

攀枝花学院Java实验五 常用类

实验报告附页String s7 = new String("123.678");int n1=Integer.parseInt(s6);//将s6转化成int型数据。

double n2=Double.parseDouble(s7); //将s7转化成double型数据。

double m=n1+n2;System.out.println(m);String s8=String.valueOf(m); //String调用valuOf(int n)方法将m转化为字符串对象position=s8.indexOf(".");String temp=s8.substring(position+1);System.out.println("数字"+m+"有"+temp.length()+"位小数") ;@SuppressWarnings("unused")String s9=new String("ABCDEF");char a[]=s8.toCharArray(); //将s8存放到数组a中。

for(int i=a.length-1;i>=0;i--){System.out.print(" "+a[i]);}}}运行结果:将上面程序按如下要求修改,并运行:(1)程序中的s6改写成String s6=new String(“1a12b”);运行时提示怎样的错误?Exception in thread "main" ng.NumberFormatException: For input string: "1a12b"at ng.NumberFormatException.forInputString(Unknown Source)at ng.Integer.parseInt(Unknown Source)at ng.Integer.parseInt(Unknown Source)at xiti2.xiugai.main(xiugai.java:39)(2)请用数组a的前3个单元创建一个字符串并输出该串。

java 实验报告

java 实验报告

java 实验报告Java 实验报告引言:Java 是一种广泛应用于软件开发的计算机编程语言,具有跨平台、面向对象、简单易学等特点。

本实验报告将介绍我在学习 Java 过程中进行的一系列实验,包括实验目的、实验过程、实验结果和实验总结。

实验一:Hello World 程序实验目的:通过编写一个简单的 Hello World 程序,熟悉 Java 的开发环境和基本语法。

实验过程:1. 安装 Java Development Kit(JDK)并配置环境变量。

2. 使用文本编辑器编写以下代码:```javapublic class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}}```3. 将代码保存为 HelloWorld.java。

4. 打开命令提示符,切换到代码所在目录,输入以下命令编译代码:```javac HelloWorld.java```5. 输入以下命令运行程序:```java HelloWorld```实验结果:命令提示符中输出 "Hello, World!"。

实验二:数据类型和运算符实验目的:了解 Java 的数据类型和运算符,并能够正确使用它们进行计算。

实验过程:1. 声明并初始化不同类型的变量,例如整数、浮点数和布尔类型。

2. 使用算术运算符进行基本的数值计算。

3. 使用逻辑运算符进行布尔类型的操作。

实验结果:根据实验过程中的代码和输入,得到相应的计算结果。

实验三:条件语句和循环结构实验目的:掌握 Java 中的条件语句和循环结构,能够根据不同的条件执行相应的代码块。

实验过程:1. 使用 if-else 语句实现条件判断。

2. 使用 switch-case 语句实现多分支选择。

3. 使用 for 循环、while 循环和 do-while 循环实现不同的循环结构。

《Java程序设计》上机实验报告 实验五 流、文件及基于文本的应用

《Java程序设计》上机实验报告 实验五   流、文件及基于文本的应用

信息科学与工程学院《Java程序设计》上机实验报告专业班级姓名学号主要实验记录及个人小结(包括部分实验源程序、调试结果及实验结果分析等)2.编写一个程序,能将一个源程序中的空行及注释去掉,并将处理后的内容写到目标文件中。

(源文件名称和目标文件名称均要求以命令行参数形式输入)import java.io.BufferedReader;import java.io.File;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.PrintWriter;public class CopyFile {static String delComm(String s){if(s==null)return s;int pos=s.indexOf("//"); //去掉以//开始的注释if(pos<0)return s;return s.substring(0,pos);}public static void main(String args[]){String infname="CopyFile.java";String outfname="CopyFile.txt";if(args.length>=1)infname=args[0];if(args.length>=2)outfname=args[1];try{File fin=new File(infname);File fout=new File(outfname);BufferedReader in = new BufferedReader(new FileReader(fin));PrintWriter out = new PrintWriter(new FileWriter(fout));int cnt=0;String s = in.readLine(); //写字符串while(s != null){主要实验记录及个人小结(包括部分实验源程序、调试结果及实验结果分析等)cnt ++;s=delComm(s); //去掉以//开始的注释out.println(cnt+":\t"+s);//写出s=in.readLine(); //读入}in.close(); //关闭缓冲读入流及文件读入流的连接out.close();}catch (FileNotFoundException e1){System.out.println("File not found");}catch(IOException e2){e2.printStackTrace();}}}主要问题的出错现象:1)运行程序后,无对应的输出结果出现2)源程序编写过程中,出现方法和类的调用无法完成.出错原因:1)函数调用时候,相关函数输入变量错误2)方法名的书写不符合规范,使得方法变为变量.解决方法及效果:1) 编写和调用类的方法时,注意参数的类型和数量的对应.2)规范命名.常量用大写字母,变量用小写字母开始,类以大写字母开始.实验小结:1) 为每个类分配正确的职责.尽量保持类功能单一. 不要在一个类中做太多事.2) BufferedReader的方法:readLine():String ,当他的返回值是null时,就表示读取完毕了。

实验五 异常

实验五  异常

桂 林 电 子 科 技 大 学《Java 应用开发》 实 验 报 告实验名称 异常 计算机科学与工程学院计算机科学与技术专 业 班 第 实 验 小 组 姓 名 学 号 实 验 日 期 2015 年 11月 7 日实验五 异常一、 实验目的1、掌握异常的概念、作用、分类和进行异常处理的语法结构。

2、了解系统异常类的体系和系统定义的常见标准异常。

3、掌握用户自定义异常类的定义和抛出异常的方法。

4、通过掌握异常来分析调试程序的编译错误和编写更健壮的程序。

二、 实验内容1、标准异常:设计一个程序,使得其运行时,可以接受用户输入若干个整数并依次存入数组中,不限定输入数的个数,使得在输入数的个数超过数组的实际大小时产生数组下标越界异常(ArrayIndexOutOfBoundsException )。

程序代码中“不需要”对异常进行捕获处理,观察异常产生时程序运行是否被中断,编译器产生了怎样的提示。

2、自定义异常:设计一个新的程序或者完善题目1的程序,使得其运行时,可以接受用户输入若干个数并依次存入数组中。

要求用户输入的整数必须大于0小于100。

如果不符合这个范围则抛出异常。

请自定义一个异常类来表示这种情况,并在用户的输入不符合要求时抛出该异常。

三、 分析与设计1. 定义一个大小为5的整形数组int number [] = new int [5];Scanner sr = new Scanner(System.in );for (int i = 0; i <10; i ++)//循环次数大于5, {System.out .print("请输入一个数字");number [i ] = sr .nextInt();}当输入第六个数的时候会提示错误指导教师意见: 成绩 教 师 签 名2. 可以自己定义输入数字的个数System.out.println("依次输入"+a.length+"个整数!");try{for(int i=0;i<a.length;i++)even( a[i]=input.nextInt() );System.out.println("successfully input!");}当输入的数字大于自定义的数是,会给出异常。

Java程序设计实验报告2010

Java程序设计实验报告2010
{ int a,b;
public void setab(inti, int j)
{ a=i; b=j; }
public void printab()
{ int sum=a+b;
System.out.println(“a+b=”+sum);
}
}
//B.java
packagepkg1.pkg2;
public class B
{ Exam3_6 d1=new Exam3_6();
System.out.print(”The current date is(year/month/day):”);
d1.outDate();
System.out.println( );
System.out.print(”Its tomorrow date is(year/month/day):”);
{ A x=new A();
A y=new A();
x.setab(5);
y.setab(10);
System.out.println(“x.a=”+x.geta()+”,y.a=”+y.geta());
x.setb(-5);
y.setb(-10);
System.out.println(“x.b=”+x.getb()+”,y.b=”+y.getb());
Its tomorrow is (year/month/day):2000/1/2
The current date is (year/month/day):2004/1/8
Is tomorrow is (year/month/day):2004/1/9

JAVA实验报告

JAVA实验报告

学生实验报告课程名称:面向对象程序语言(Java)年级:专业:学号:姓名:指导教师:实验地点:学年至学年度第学期1.目录实验一初识Java——“一个简单的应用程序”实验二基本数据类型与数组——“输出希腊字母表”实验三分支与循环语句——“猜数字游戏”实验四类与对象——“机动车”实验五类与对象——“家中的电视”实验六类与对象——“共饮同井水”实验七类与对象——“求方程的根”实验八子类与继承——“中国人、北京人和美国人”实验九子类与继承——“银行计算利息”实验十子类与继承——“公司支出的总薪水”实验十一接口与实现——“评价成绩”实验十二内部类与异常类——“检查危险品”实验十三常用实用类——“检索简历”实验十四组件及时间处理——“计算三角形的面积”实验十五实验十六实验(一)初识Java——“一个简单的应用程序”实验时间:2017年02月21日实验目的本实验的目的是让学生掌握开发Java应用程序的三个步骤:编写源文件、编译源文件和运行应用程序实验要求编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,欢迎学习Java”和“We are students”。

实验内容public class Hello {public static void main (String args[ ]) {System.out.println("你好,很高兴学习Java"); //命令行窗口输出"你好,很高兴学习Java"A a=new A();a.fA();}}class A {void fA() {System.out.println("We are students"); //命令行窗口输出"We are students"}}实验结果分析通过本次实验,在老师的指导下我学会了基本的JAVA编译原理,能够自行改变环境变量,能够成功编译出一个简单的应用程序,而且通过实验后的练习知道了一些基础的错误在JAVA中出现时编译器的提示信息是怎样的。

JAVA语言程序设计实验报告

JAVA语言程序设计实验报告

实验一、安装JDK并熟悉java的运行环境实验二、基本语法练习实验三、面向对象编程实验(4)实验四、异常处理实验实验五、小应用程序实验实验六、图形图像实验实验七、GUI(图形用户接口)实验(4)实验八、多线程实验实验九、输入输出流实验(4)实验十、数据库应用实验(4)实验一、安装JDK并熟悉java的运行环境一、实验目的熟悉JA V A的运行环境及学习简单的编程。

二、预习内容安装工具软件的基本方法。

三、实验设备与环境装有JA V A语言工具软件(Eclipse )的微机若干四、实验内容安装Eclipse及JA V A的核心编译程序J2SDK。

1、打开Eclipse的安装盘安装Eclipse。

2、在相同目录下安装J2SDK。

3、打开Eclipse软件对J2SDK文件进行配置。

4、编写一应用程序,在屏幕上显示“HELLO WORLD”和爱心标志。

Pulic class Hello{public static void main(String args[]){//在屏幕上显示“HELLO WORLD”和爱心标志}}5、编写一小程序实现上述功能:在屏幕上显示“HELLO WORLD”和爱心标志。

实验结果五、注意事项⒈认真填写实验报告⒉遵守实验室各项制度,服从实验指导教师的安排⒊按规定的时间完成实验六、说明本次实验建议学时数2学时七、实验总结与体会实验二、基本语法练习一、实验目的⒈熟悉Java的基本语法⒉编写应用程序接收命令行参数⒊编写应用程序接收用户从键盘的输入⒋掌握字符串与数组的基本方法二、预习内容java编程的基本结构三、实验设备与环境装有JA V A语言工具软件(Eclipse )的微机若干四、实验内容⒈编写一个应用程序求若干个数的平均数,原始数字要求从命令行输入。

应用程序中main方法的参数String类型的数组args能接受用户从命令行键入的参数。

(1)编辑A verage.java。

class A verage{public static void main(String args[ ]){double n,sun=0;for (int l=0;l<args.legth;l++){sum=sum+Double.valueOf(arg[l].doubleV alue();)}n=sum/args.length;System.out.println(“average=”+n);}}命令行参数:12.34 34.45 21212121注意:1)参数的个数可以利用args.length来取得。

java实验报告实验原理

java实验报告实验原理

java实验报告实验原理Java实验报告实验原理一、引言Java是一种广泛使用的计算机编程语言,具有跨平台、面向对象、简单易学等特点。

在学习Java编程的过程中,实验是不可或缺的一部分。

本文将介绍Java实验的原理和相关知识。

二、实验环境搭建在进行Java实验之前,需要搭建相应的实验环境。

首先,需要安装Java Development Kit(JDK),这是Java开发的基础工具包。

其次,需要选择一个集成开发环境(IDE)来编写和运行Java程序,比如Eclipse、IntelliJ IDEA等。

最后,需要配置Java的环境变量,以便在命令行中能够直接运行Java程序。

三、实验原理1. Java的基本语法Java的语法规范包括数据类型、变量、运算符、控制语句等。

在Java实验中,我们需要掌握这些基本语法知识,以便正确编写和理解Java程序。

2. 面向对象编程Java是一种面向对象的编程语言,它支持封装、继承和多态等特性。

在实验中,我们需要理解面向对象的概念,并能够正确应用这些特性来解决实际问题。

3. 类和对象在Java中,类是对象的模板,用于描述对象的属性和行为。

对象是类的实例,具有独立的状态和行为。

在实验中,我们需要学会定义和使用类和对象,以及理解它们之间的关系。

4. 异常处理Java提供了异常处理机制,可以捕获和处理程序中的异常情况。

在实验中,我们需要学会使用try-catch语句来捕获异常,并进行相应的处理,以保证程序的稳定性和可靠性。

5. 输入输出Java提供了丰富的输入输出功能,可以从键盘读取输入,也可以将结果输出到控制台或文件中。

在实验中,我们需要学会使用Java提供的输入输出类和方法,以便与用户进行交互和展示程序的结果。

6. 集合框架Java的集合框架提供了一系列的数据结构和算法,用于存储和操作数据。

在实验中,我们需要学会使用集合框架提供的各种数据结构,比如List、Set、Map 等,以及相应的操作方法,比如添加、删除、查找等。

Java实验

Java实验

实验一熟悉Java开发环境(验证性2学时)一、实验目的与要求:1 掌握Java Application程序的开发过程并编写第一个Java Application程序*2 掌握Java Applet程序的开发过程并编写第一个Java Applet程序。

*3 练习简单的HTML文件配合Java Applet使用。

4 熟悉jdk的使用二、实验内容:1 编写一个Java Application程序,在屏幕上显示”This is my first java program!”.*2 编写第一个Java Applet 程序,在屏幕上显示”This is my first Java Applet!”三、实验步骤:1、jdk的使用jdk开发工具包可以从网站下载,jdk不是集成编译环境,须手动运用命令行程序进行编译和解释执行1)编辑.java文件可以在记事本或其他纯文本编辑器中编辑,保存时把文件扩展名定为.java即可,当然要注意文件名命名的要求2)编译生成.class文件进入dos系统进行编译(如图1.1所示),格式如javac MyFirstApplication.java,要注意图1.1进入命令行看javac.exe的路径并且MyFirstApplication.java文件路径和javac.exe路径一样。

编译成功后就能在浏览器中看见多了一个MyFirsApplication.class或更多的.class文件。

如图1.2所示图1.2使用jdk编译MyFirstApplication.java文件3)解释执行Application程序:同样是在dos系统下解释执行,格式如java MyFirstApplication,注意.class后缀别加,如图1.3所示。

图1.3解释执行MyFirstApplication.class程序* applet程序进入dos系统进行编译,格式如javac MyFirstApplet.java,要注意看javac.exe的路径并且MyFirstApplet.java文件路径和javac.exe路径一样。

java 实验5 接口多态 实验报告

java 实验5 接口多态  实验报告

实验五接口、多态与内部类实验目标:1、理解接口、塑型、多态的概念并能熟练应用;2、熟练掌握接口的定义和使用;3、深刻理解构造方法的调用顺序,理解编写时需要注意的问题;4、了解并学会使用内部类实验任务:1、继承时的多态:目测给出下面代码的执行输出结果,并简单解释每一行输出的原因。

答:首先,该程序的主函数是Vehicle v=new Vehicle();即先声明并实例化一个汽车对象,而v.test();则是调用汽车的测试方法;而test方法里,Vehicle vc=new Car();是将上面的汽车指向了一个具体的小汽车对象;Bus vb=new Bus();将公共汽车指向了一个具体的公共汽车对象;drive();调用汽车的驾驶方法;vc.drive();调用小汽车的驾驶方法;vb.drive();调用公共汽车的驾驶方法;而vc.brake();vb.brake();则是直接调用汽车的刹车方法。

因而运行结果如下:A new bus.Vehicle is drivenCar is drivenBus is drivenVehicle is brakedVehicle is braked2.针对下面的简单的类图,从面向对象的角度,将Instrument定义成接口,应怎样实现。

编写能完成如图功能的程序,并再编写一个简单的应用程序进行多态性测试。

(参考例子5-9;实验4该题是要求用抽象类来实现,在此要求用接口实现,还要进行多态性测试)说明:Instrument表示乐器、Wind表示管乐器、Percussion敲击乐器、Stringed表示弦乐器、Woodwind表示木管乐器、Brass表示铜管乐器。

要求:(1)Instrument为接口,Wind为抽象类,其他为普通类。

这里测试的目的是:我们知道当一个普通类实现一个接口时,必须实现该接口的全部方法,但当这个类是抽象类时,我们还需要实现该接口全部方法吗?如果不需要实现?那么是否直接不理这个方法就一,还是要将这个方法在自己类内部再标记一次为抽象方法。

JAVA入门程序分析

JAVA入门程序分析

一、实验目的实验一:掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序。

实验二:学习同时编译多个Java源文件。

实验三:掌握char型数据和int型数据之间的转换,了解Unicode字符表。

实验四:掌握数组属于引用型的一种复合型数据类型。

实验五:掌握Array类。

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

实验二:编写4个源文件:MainClass.java、A.java、B.java和C.java,每个源文件只有一个类。

其中,MainClass.java含有应用程序的主类,并使用A、B和C类。

将4个源文件保存到同一个目录下,然后编译MainClass.java文件。

实验三:编写一个Java应用程序,在命令行窗口输出希腊字母表。

实验四:编写一个Java应用程序,在命令行窗口输出数组的引用以及元素的值。

实验五:编写一个Java应用程序,输出数组a的全部元素,并将数组a的全部或部分元素复制到其他数组中,然后改变其他数组的元素的值,再输出数组a的全部元素。

三、实验详情实验一:一个简单的应用程序问题分析:在命令行窗口输出文字源代码(注释量不得少于代码量的1/3):public class Hello {public static void main (String args[ ]) {System.out.println("你好,欢迎学习Java");//命令行窗口输出“你好,欢迎学习Java”A a=new A( );a.fA( );}}class A {void fA( ) {System.out.println("We are students");//命令行窗口输出“We are students”}}运行结果:心得体会:在java里输出语句是System.out.println()实验二:联合编译问题分析:同时编译多个Java文件。

Java实验报告5-AWT和swing组件的功能

Java实验报告5-AWT和swing组件的功能

实验报告课程名称: Java语言程序设计院(系):管理学院专业班级:姓名:学号:指导教师:2013年6月9日《Java语言程序设计》上机实验报告序号实验五组号 1 成绩名称图形用户界面AWT/Swing组件学时 2评阅教师签名: 2013年月日一、实验目的1.熟悉Java AWT、swing组件的功能;2.掌握常用组件的事件接口;3.会应用AWT、swing组件进行应用程序设计。

二、实验内容AWT、swing组件应用程序设计设计(完成windows计算器两种以上的运算功能)。

三、实验硬件、软件环境1.PC计算机一台,配置为CPU为P42.8G,内存为512M,硬盘为80G;2.WindowsXP + JSDK1.6 + JCreatorV4。

四、实验算法设计在设计计算其界面的基础上,添加事件监视,对按钮进行各种操作。

五、程序设计/*** @(#)Calculator.java*** @author* @version 1.00 2013/6/9*/import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Calculator extends JFrame{private final JTextField textField;private String num="0";private String operator="+";private String result="0";public static void main(String agrs[]){Calculator frame=new Calculator();frame.setVisible(true);}public Calculator(){super();setTitle("计算器");setResizable(false);setBounds(100,100,208,242);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);final JPanel viewPanel=new JPanel();add(viewPanel,BorderLayout.NORTH);textField=new JTextField();textField.setText(num);textField.setColumns(18);textField.setEditable(false);textField.setHorizontalAlignment(SwingConstants.RIGHT);viewPanel.add(textField);add(viewPanel,BorderLayout.NORTH);final JPanel clearButtonPanel=new JPanel();clearButtonPanel.setLayout(new GridLayout(1,3,5,5));add(clearButtonPanel,BorderLayout.CENTER);String[] clearButtonNames={"<-","CE","C"};for(int i=0;i<3;i++){final JButton button=new JButton(clearButtonNames[i]);button.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e) {JButton button=(JButton)e.getSource();String text=button.getText().trim();if(text.equals("<-")){int length=num.length();if(length==1)num="0";else num=num.substring(0,length-1);}else if(text.equals("CE")){num="0";}else{num="0";operator="+";result="0";}textField.setText(num);}});clearButtonPanel.add(button);};final JPanel inputButtonPanel=new JPanel();final GridLayout gridLayout=new GridLayout(4,0,10,10);inputButtonPanel.setLayout(gridLayout);add(inputButtonPanel,BorderLayout.SOUTH);String[][]inputButtonNames={{"1","2","3","+"},{"4","5","6","-"},{"7","8","9","*"},{".","0","=","/"} };for(int row=0;row<4;row++){for(int col=0;col<4;col++){final JButton button=new JButton(inputButtonNames[row][col]);button.setName(row+""+col);button.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){JButton button=(JButton)e.getSource();String name=button.getName();int row=Integer.valueOf(name.substring(0,1));int col=Integer.valueOf(name.substring(1,2));100if(col==3){count();textField.setText(result);operator=button.getText();}else if(row==3){if(col==0){if(num.indexOf(".")<0){num=num+button.getText();textField.setText(num);}}else if(col==1){if(num.indexOf(".")>0){num=num+button.getText();textField.setText(num);}else{if(!num.substring(0,1).equals("0")){num=num+button.getText();textField.setText(num);}}}else{count();textField.setText(result);operator="+";}}else{if(num.equals("0"))num=button.getText();else num=num+button.getText();textField.setText(num);}}void count(){float n=Float.valueOf(num);float r=Float.valueOf(result);if(r==0){result=num;num="0";}else{if(operator.equals("+")){r=r+n;}else if(operator.equals("-")){r=r-n;}else if(operator.equals("*")){r=r*n;}else {r=r/n;}num="0";result=r+"";}}});inputButtonPanel.add(button);}}}}六、程序测试记录及结果、运行说明七、实验总结系统的设计程序,完成程序前后关照,解决每个问题关键要求。

java编程基础实验报告

java编程基础实验报告

java编程基础实验报告Java编程基础实验报告一、引言Java是一种广泛应用于软件开发领域的高级编程语言,具有跨平台的特性,因此备受开发者的青睐。

本篇实验报告将介绍我在学习Java编程基础过程中所进行的实验,并总结实验结果和心得体会。

二、实验目的本次实验的主要目的是通过编写Java程序,加深对Java编程语言的理解和掌握,提高编程能力和解决问题的能力。

三、实验内容1. 实验环境搭建在开始实验之前,我首先搭建了Java编程环境。

我选择了使用Eclipse作为集成开发环境(IDE),并安装了Java开发工具包(JDK)。

2. 实验一:Hello World程序在第一个实验中,我编写了一个简单的Hello World程序。

该程序的功能是在控制台输出"Hello, World!"。

通过这个实验,我熟悉了Java程序的基本结构和语法规则。

3. 实验二:变量和数据类型在第二个实验中,我学习了Java中的变量和数据类型。

我编写了一个程序,实现了两个整数相加并输出结果的功能。

通过这个实验,我掌握了Java中的基本数据类型和变量的声明和使用方法。

4. 实验三:条件语句和循环语句在第三个实验中,我学习了Java中的条件语句和循环语句。

我编写了一个程序,实现了判断一个数是否为偶数并输出结果的功能。

通过这个实验,我掌握了Java中的if语句和for循环语句的使用方法。

5. 实验四:数组和字符串在第四个实验中,我学习了Java中的数组和字符串。

我编写了一个程序,实现了对一个整型数组进行排序并输出结果的功能。

通过这个实验,我掌握了Java中数组的声明和使用方法,以及字符串的操作方法。

6. 实验五:面向对象编程在第五个实验中,我学习了Java中的面向对象编程。

我编写了一个程序,实现了一个简单的学生信息管理系统。

通过这个实验,我掌握了Java中类的定义和对象的创建与使用方法。

四、实验结果通过以上实验,我成功编写了各种Java程序,并在控制台输出了预期的结果。

java程序设计课程--实验报告-实验05

java程序设计课程--实验报告-实验05
(c)完成赋值语句,使change1变量包含与colledge相同的字符,但是全部大写;
(d)完成赋值语句,使change2包含与change1相同的字符,但是所有字符“O”全部要用“*”替换。
(e)完成赋值语句,将colledge和town两个字符串连接起来,并把值赋给change3(使用String类的concat方法)。
phraseLength = phrase.length();
middleIndex = phraseLength/2;
//get the substring for each half of the phrase
firstHalf = phrase.substring(0,middleIndex);
int phraseLength;//number of characters in the phrase String
int middleIndex;//index of the middle character in the String
String firstHalf;//first half of the phrase string
3.声明两个新的字符串类型变量city和state。添加语句,提示用户输入他们的籍贯所在的city和state,并使用Scanner类读入该信息。然后使用String类创建并打印一个新字符串,包含state名(全部大写),city名(全部小写),state名(全部大写)。如下例所示:
NORTH CAROLINAlilesvilleNORTH CAROLINA
//Get the lengths of the sides as input
System.out.print("Please enter the lengths of the two sides of" + "a right triangle(separate by a blank space):");

《网络编程技术及应用》实验报告5

《网络编程技术及应用》实验报告5

辽宁省高等教育自学考试计算机软件技术专业实验报告书课程名称:网络编程技术及应用助学单位姓名准考证号成绩二O一二年九月实验五Java的Internet应用报告一、实验目的:1. 基本掌握查找Internet地址。

2. 熟练掌握用URL检索数据。

3. 基本掌握收发电子邮件。

二、实验任务:1. 查找Internet地址2. 用URL检索数据3. 收发电子邮件三、实验器材:1.装有Windows 系统计算机。

2.JDK工具。

四、实验内容与步骤:练习:(一)查找Internet地址.InetAddress类是Java的IP地址封装类。

一.InetAddress有适合于初始化InetAddress对象的3个静态方法,它们是:1)public static InetAddress InetAddress.getByName(String hostName) throwsUnknowHostException它需要将寻找的主机名作为参数,并使用DNS查找主机的IP地址2)public static InetAddress[] InetAddress.getAllByName(String hostname) throwsUnknowHostException有些计算机具有一个以上的Internet地址,给定一个主机名,InetAddress.getAllByName()会返回一个包含了与该主机名相对应的所有地址的数组。

例如:InetAddress[] address=InetAddress.getAllByName(“/)3)public static InetAddress InetAddress.getLocalHost() throws UnknowHostExceptionInetAddress.getLocalHost()执行在一个计算机上,它将返回该机器的InetAddress。

包的几个其他方法也能返回InetAddress对象。

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

实验五继承、抽象类和接口学号201617406 姓名刘顺专业网络工程成绩【实验目的与要求】1、掌握Java中类的继承、变量继承、方法继承的思想和使用;2、理解和掌握java中多态性的覆写和重载的区别和用法;3、掌握抽象和接口的工作机制和用法;4、实验后及时总结、归纳、分析,并完成实验报告。

【实验内容与要求】1、继承和覆盖的使用(1)编写Employee雇员类,在该类中定义了3个域:name表示员工姓名,salary表示员工的工资,work表示工作:“编写程序”,并分别为它们定义了set和get方法。

(2)编写Manager经理类,该类继承自Employee雇员类。

在该类中,定义了一个bonus域,表示经理的奖金,重写work方法:“管理项目”。

(3)在主类中,创建Employee雇员和Manager经理对象,并为其赋值,输出其信息。

2、抽象类的定义和使用(1)定义抽象类Aniaml动物抽象类,通过构造方法得到动物名字并输出;定义抽象方法shout()表示叫声;定义抽象方法eat()表示吃食。

(2)定义Cat类继承自Animal类,调用父类的构造方法输出猫的名字信息。

实现抽象方法shout(“猫叫:喵喵喵!”) ;实现抽象方法eat(“猫喜欢吃:鱼”)。

(3)定义Dog类继承自Animal类,调用父类的构造方法输出狗的名字信息。

实现抽象方法shout(“狗叫:汪汪汪!”) ;实现抽象方法eat(“狗喜欢吃:骨头”)。

(4)在主方法中,实例化“小猫”和“小狗”,并向上转型赋给Aniaml类变量Animal ani =new Cat("小猫"); 分别调用ani的shout()和eat()方法。

3、接口的定义和使用(1)定义一个USB接口标准,定义2个抽象方法:USB设备信息显示show();USB设备开始工作start();USB 设备停止工作stop();(2)定义U盘子类,class Flash implements USB实现USB接口标准,实现方法:USB接入产品信息show (“USB设备已经接入”);设备启动信息start(“USB设备已经启动”);设备停止动作信息stop(“USB设备已经停止”);(2)定义打印机子类,class Print implements USB实现USB接口标准,实现方法:打印机接入产品信息show (“打印机已经接入”);设备启动信息start(“打印机已经启动”);设备停止动作信息stop(“打印机已经停止”);(3) 定义Computer类,定义插入USB方法plugin(USB usb) ,调用接口方法,实现接口功能。

(4) 在主类中定义Computer 的对象,分别调用方法plugin(USB Flash)表示插入Flash优盘,plugin(USB print) 表示插入打印机。

【实验过程与结果】实验1:实验程序class Employee{ //父类(员工类)private String name; //私有成员变量姓名private double salary; //私有成员变量工资private String work; //私有成员变量工作//成员变量赋值public void setname(String name){=name;}public void setsalary(double salary){this.salary=salary;}public void setwork(String work){this.work=work;}//成员变量输出public void getname(){System.out.println("姓名:"+name);}public void getsalary(){System.out.println("工资:"+salary);}public void getwork(){System.out.println("工作:"+work);}}class Manager extends Employee{ //子类(经理类)private double bonus; //私有成员变量奖金private String work; //私有成员变量工作//成员变量赋值public void setbonus(double bonus){this.bonus=bonus;}//成员变量输出public void getbonus(){System.out.println("奖金:"+bonus);}//成员变量赋值public void setwork(String work){this.work=work;}//成员变量输出public void getwork(){System.out.println("经理工作:"+work);}}public class Company {public static void main(String[] args) {Employee p1=new Employee(); //实例化对象p1(员工)Manager p2=new Manager(); //实例化对象p2(经理)p1.setname("小明"); //员工姓名p1.setsalary(5000); //员工工资p1.setwork("编写程序"); //员工工作p1.getname(); //调用输出p1.getsalary(); //调用输出p1.getwork(); //调用输出System.out.println("***** ***分*** ***割*** ***线*** *****");p2.setname("小李"); //经理姓名p2.setsalary(5000); //经理工资p2.getname(); //调用输出p2.getsalary(); //调用输出p2.setbonus(2000); //经理奖金p2.setwork("管理项目"); //经理工作p2.getbonus(); //调用输出p2.getwork(); //调用输出// TODO自动生成的方法存根}}实验结果:仅供参考:实验分析本实验主要考查Java中类的继承和覆盖,其中包括方法的继承和变量的继承,方法的重写。

我先写了一个Employee雇员类,该类作为父类,在该类中定义了3个成员变量:name、 salary、 work,并分别为它们定义了set和get方法。

set方法为成员变量赋值,get方法输出成员变量信息。

之后又定义了Manager经理类,该类作为子类继承自Employee雇员类,在该类中定义了一个bonus成员变量,表示经理的奖金,重写work方法表示经理的工作,经理的其他信息都可继承自父类雇员类,且不需重写。

最后在主方法中,分别创建Employee雇员的对象P1和Manager经理的对象P2,调用set和get方法即可,输出其信息。

实验2:实验程序abstract class Animal{String name;public Animal(String name){=name;System.out.println("动物:"+name);abstract public void getname();abstract public void shout();abstract public void eat();}class Cat extends Animal {public Cat(String name) {super(name);}public void getname(){};public void shout(){System.out.println("猫叫:喵喵喵!");}public void eat(){System.out.println("猫喜欢吃:鱼!");}}class Dog extends Animal{public Dog(String name) {super(name);}public void getname(){}public void shout(){System.out.println("狗叫:汪汪汪!");}public void eat(){System.out.println("狗喜欢吃:骨头!");}}public class Zoon {public static void main(String[] args) {Animal ani1 =new Cat("小猫");ani1.shout();ani1.eat();Animal ani2 =new Dog("小狗");ani2.shout();ani2.eat();// TODO自动生成的方法存根}实验结果:参考结果:实验分析在本实验中,主要是考查对抽象类的定义和使用。

相对来说和上一实验的继承有同源方法,理解上更简单。

首先,我定义了一个抽象类Aniaml,可以理解为他就是父类,通过构造方法得到动物名字并输出,同时定义抽象方法shout()表示叫声,定义抽象方法eat()表示食物。

而后我又定义了Cat类和Dog类均继承自Animal类,也可以理解为他们是Animal类的子类,可以直接调用父类的构造方法输出名字。

调用实现抽象方法shout和抽象方法eat。

最后在主方法中,实例化“小猫”和“小狗”的对象ani1和ani2,并向上转型赋给Aniaml类变量,分别调用ani1和ani2的shout()和eat()方法即可。

实验3:实验程序interface USB{abstract void show();abstract void start();abstract void stop();}class Flash implements USB{public void show(){System.out.println("USB设备已经接入");}public void start(){System.out.println("USB设备已经启动");}public void stop(){System.out.println("USB设备已经停止");}}class Print implements USB{public void show(){System.out.println("打印机已经接入");}public void start(){System.out.println("打印机已经启动");}public void stop(){System.out.println("打印机已经停止");}}class Computer{void plugin(USB usb){usb.show();usb.start();usb.stop();}}public class Interface {public static void main(String[] args) {Computer p1=new Computer();p1.plugin(new Flash());p1.plugin(new Print());}}实验结果:参考结果实验分析本实验主要考查接口的定义和使用。

相关文档
最新文档