Java SE实验报告1
java实训报告(通用9篇)

java实训报告java实训报告(通用9篇)在当下社会,大家逐渐认识到报告的重要性,写报告的时候要注意内容的完整。
那么一般报告是怎么写的呢?下面是小编精心整理的java实训报告,欢迎大家借鉴与参考,希望对大家有所帮助。
java实训报告篇1一、实训目的1.熟练掌握Java面向对象程序设计的基础知识。
2.熟练掌握Java中常用的Swing组件的使用方法。
3.熟练掌握Java程序中图形用户界面设计的方法。
4.熟练掌握使用JDBC操作数据库的方法。
5.通过实训,培养学生分析和解决实际问题的能力,提高调试和分析应用程序的能力,并为后续Java高级编程等专业课程的学习奠定良好的基础。
二、课程设计报告内容2.1 实训内容本课程设计的题目是设计一个简化的仓库管理系统。
该系统从仓库管理人员的角度出发,实现对货物信息、生产商信息的浏览、添加、删除和查询,同时还可以对货物出货、入货进行操作和控制。
设计内容主要包括系统分析、数据库、数据表的创建、系统各个窗体的布局及其编码实现。
系统功能分析是在系统开发的总体任务的基础上完成的。
该管理系统需要完成的基本功能主要有:用户管理:主要包括用户的添加、修改和删除。
供应商管理:主要包括供应商的添加、删除和修改。
产品管理:主要包括产品的添加、删除和进货、出货。
产品视图管理:主要包括产品查询、数据文件的导入、查询结果集的导出。
2.2 实训设备或软、硬件硬件:PⅣ及以上性能的PC机;软件:Windows 20xx或Windows XP系统;JDK工具;JCreator4.0环境2.3 功能设计及思想本次实训设计采用选择结构化开发方法,即用系统工程的思想和工程化的方法,按照用户至上的原则,自顶向下整体分析与设计和自底向上逐步实施的系统开发过程。
是组织、管理和控制信息系统开发过程的一种基本框架。
其基本思想:在系统分析时,采用自顶向下、逐层分解,由抽象到具体的逐步认识问题的过程;在系统设计的时候,先考虑系统整体的优化,再考虑局部的优化问题;在系统实施的时候,则坚持自底向上,先局部后整体,通过标准化模块的连接形成完整的系统。
JAVA实验报告

JA V A实验报告实验一 Java开发环境及基本语法一、实验目的1、掌握常用的Java 集成开发环境的使用,特别是Eclipse 和NetBeans。
2、掌握Java 基本语法,重点是面向对象的思想和语法。
3、掌握控制台下(应用程序)的输入输出方法,作为后续部分实验的基础。
二、实验类型设计型。
三、实验内容1、打开实验室计算机上的集成开发环境Eclipse 或NetBeans(重点是Eclipse)了解开发软件的各个菜单功能。
会创建java 项目(Project),会编辑和编译、运行项目代码。
、。
2,验证和学习所给的几个例子程序及其讲解。
然后自己编写一个至少由一个类构成的Java 程序,其功能是在运行后,能接收用户输入一个学生的姓名以及java 课的成绩(百分制),并输出对该学生成绩是否达到60 分的及格分的判断(可使用if 语句)。
例如,输入学生姓名李明,然后输入成绩50,则输出“ 李明的成绩为不及格”。
3、编写一个程序来表示长方体的长宽高等数据并有计算体积的函数可供调用,长方体类从矩形类继承而来。
程序运行时能接受输入任意的 3 个数作为长方体的长、宽和高,然后能够输出所输入的长宽高及所计算出的体积。
注意不能把代码全部写在main 函数里面,不能直接输出长宽高的乘积。
代码如下;第一个import java.util.Scanner;public class Test{public static void main(String[] args) {String str; // 定义一个字符串变量strint i; // 定义一个整型变量iScanner sc = new Scanner(System.in); // 定义一个Scanner对象,从System.in接受输入System.out.print("输入学生姓名");str = sc.next(); // 等待用户输入任意一个字符串,它会被存到str中System.out.println("姓名:" + str); // 输出字符串strSystem.out.print("输入学生的分数:");i = sc.nextInt(); // 等待用户输入任意一个整数,它会被存到i中if(i<60)System.out.print("他的JAVA不及格,成绩是" + i );elseSystem.out.println("他的JAVA成绩是:" + i); // 输出整数i}}第二个import java.util.Scanner;public class wwh {public static void main(String[] args) {int Long; // 矩形的长int wide; // 矩形的宽int High; // 长方体的高S canner sc = new Scanner(System.in);S ystem.out.print("输入长");L ong = sc.nextInt();S ystem.out.print("输入宽");w ide=sc.nextInt();S ystem.out.print("输入高");H igh=sc.nextInt();T j T=new Tj(Long,wide,High);T.show1();}}class Vehicle{int Long; // 矩形的长int wide; // 矩形的宽Vehicle(int Long,int wide){this.Long=Long;this.wide=wide;}int getArea(){r eturn Long*wide;}void show(){System.out.println("长:"+Long);System.out.println("宽:"+wide);System.out.println("矩形的面积为; "+this.getArea()); }} //class Tj extends Vehicle{int High; // 载人数Tj(int Long,int Wide,int High){super(Long,Wide); // 调用父类的构造函数,对从父类继承而来的成员变量进行初始化this.High=High;}int getTiji(){r eturn super.getArea()*High;}void show1(){s uper.show();// 调用父类方法S ystem.out.println("长方体的高为:"+High);System.out.println("长方体的体积;"+this.getTiji());}}实验二系统类和数组一、实验目的1、通过字符串处理类的应用,掌握系统类的使用方法。
java实验报告总结

java实验报告总结java试验报告总结篇一伴随着新年钟声的到来,我不知道我是否是应当兴奋还是哀伤。
由于伴随自己三个月的华迪实训即将结束。
转瞬之间三个月的华迪实训就这样在劳碌中过去了。
通过此次短暂的java开发习,回顾一下自己这三个月的每一天,觉得过的非常的充盈,每天都有一堆忙不完的事。
由于你每天想起的第一件事情就是完成自己的项目模块,哪些地方不够,哪些需要修改。
慢慢的发觉,自己对自己所担负角色的认知:从原先的同学到现在“程序员”的转变。
“任何一个初具规模的软件都是要团队来协作的”这是我一向的认知。
由于你再全能程序员也有出纰漏的地方,你程序写的再好,那也只是你一个人的程序。
由于对于程序来说,可读性、可理解性是一项衡量它是否优秀的一个标准。
所以就有了我们6位成员的项目组。
在项目组中,我担负组员这一角色,这相当于一个正规项目的“项目开发人员”,感觉自己身上的担子挺重,由于要协作其他组员的进度并完成自己任务从而使得项目能够胜利地,完整地把它应有的功能实现。
对于项目中遇到的困难,我觉得那就是阅历不足,会遇到许多问题但也培育了我们上网搜寻查询,询问老师同学的良好习惯,让我相信任何困难都有被解决的一天。
所以从整个项目来说,自己在编码上遇到的太辣手的问题都是大家集体解决。
但是总的来说,这次课程设计对我很有援助,让我获益匪浅,期间时间虽短但是也学到了不少的知识。
在这次实训过程中,我发觉平常学习的知识与实践环节所用到的有肯定的差距,往往我觉得自己掌控的很好或者自认为娴熟的技术却在此次实践环节中往往出问题,书本上的知识只提供方法的借鉴,实践中自己需要摸索出适合详细工作的方法,这一切都离不开钻研精神与勤学好问的精神。
总的来说,这次培训效果不错,对自己有肯定的提升,这完全不同与学校的学习,由于它更加贴近工作,针对以后工作的内容作了许多实例的练习与工具的运用,为我们更快的加入工作提供的很好的前提。
并且在这次实训里,让我知道还有许多地方的不足,还有很多的技术等着我去摸索,等着我去学习。
Java实验一实验报告

Java实验⼀实验报告实验⼀ Java开发环境的熟悉⼀、实验内容1. 使⽤JDK编译、运⾏简单的Java程序2.使⽤Eclipse 编辑、编译、运⾏、调试Java程序⼆、实验要求1.没有Linux基础的同学建议先学习《》《》课程2.完成实验、撰写实验报告,实验报告模板见QQ群,注意实验报告重点是运⾏结果,遇到的问题(⼯具查找,安装,使⽤,程序的编辑,调试,运⾏等)、解决办法(空洞的⽅法如“查⽹络”、“问同学”、“看书”等⼀律得0分)以及分析(从中可以得到什么启⽰,有什么收获,教训等)。
3.实验报告中统计⾃⼰的时间步骤耗时百分⽐需求分析 40min20%设计 40min20%代码实现 60min30%测试 30min15%分析总结 30min 15%4. 严禁抄袭。
三、实验步骤(⼀)命令⾏下Java程序开发1.⾸先双击桌⾯上的Xface终端图标。
2.打开终端(类似Windows下的cmd),之后会⾃动运⾏shell程序。
3.输⼊cd Code命令进⼊Code(注意C要⼤写)⽬录。
4.输⼊mkdir 20135109 命令建⽴实验⽬录,注意⽬录名⼀定是⾃⼰的学号(学号要体现在实验报告截图中),可以使⽤ls命令或dir命令查看建⽴的⽬录情况。
5.输⼊cd 20135109命令进⼊实验⽬录,再输⼊类似mkdir exp1建⽴第⼀个实验⽬录,然后输⼊cd exp1进⼊实验⼀⽬录,可以输⼊pwd命令查看当前⼯作路径。
6.输⼊gedit Hello.java(注意把代码保存到exp1⽬录中)或vim Hello.java 编辑Hello.java。
7.输⼊javac -d . Hello.java命令编译代码,输⼊java ljp.Hello命令运⾏程序。
(⼆)Eclipse下Java程序开发、调试1.在命令⾏中输⼊eclipse命令并回车或单击桌⾯上的Eclipse EE图标打开Eclipse。
2.在Eclipse中单击File->New-> Java Project新建Java项⽬。
Java课程设计实验报告及全部源码流程图

课程设计一、实验目的1.加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及Java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。
2. 使用本学期学习的Java SE技术(也可以使用课堂教学中没有学习过的Java技术,但是应当以Java SE技术为主)完成多功能日历GUI程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。
日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。
3.在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。
二、实验要求1.问题描述准确、规范。
2.程序结构合理,调试数据准确、有代表性.。
3.界面布局整齐,人机交互方便。
4.输出结果正确。
5.正确撰写实验报告。
三、实验内容编写一个GUI程序实现日历的功能。
一年日历用12页显示,每页显示一个月的日历。
日历可以按年或月前后翻动,能够显示当前的日期以及当前农历,可以为每页日历选择背景图片。
可以实现显示时钟,时钟能进行整点报时。
可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。
四、实验步骤1.在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。
2.在第一次上机实验时讨论分工,分工明确之后,分头合作进行。
3.各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。
4. 根据实验结果,写出合肥工业大学实验报告。
实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。
5.详细的上机实验步骤见任务分工及程序设计进度表。
五、实验结果经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求——一年日历用12页显示,每页显示一个月的日历。
日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。
Java SE程序设计实验报告

本科生实验报告(三)学院: 信息工程学院专业: 信息管理与信息系统实验课程名称:Java SE程序设计运行结果如图所示:2、信号灯【代码1】//创建choice:choice=new Choice();【代码2】//创建choice添加itemRed:choice.addItem(itemRed);【代码3】//创建choice添加itemYellow:choice.addItem(itemYellow);【代码4】//创建choice添加itemGreen:choice.addItem(itemGreen);【代码5】//将当前窗口注册为choice的ItemEvent事件监视器:choice.addItemListener(this);【代码6】// choice返回被选中的条目:String item= choice.getSelectedItem();运行结果如图所示:3、布局与日历【代码1】//将pCenter的布局设置为7行7列的GridLayout 布局:pCenter.setLayout(new GridLayout(7,7));【代码2】//pCenter添加组件titleName[i]:pCenter.add(titleName[i]);【代码3】//pCenter添加组件labelDay[i]:pCenter.add(labelDay[i]);【代码4】// 窗口添加scrollPane在中心区域:add(pCenter,BorderLayout.CENTER);【代码5】// 窗口添加pNorth 在北面区域:add(pNorth,BorderLayout.NORTH);【代码6】// 窗口添加pSouth 在南区域:add(pSouth,BorderLayout.SOUTH);运行结果如图所示:4、方程求根【代码1】//当前窗口作为controlButton的ActionEvent事件的监视器:controlButton.addActionListener(this);【代码2】//textA调用方法获取其中的文本:double a=Double.parseDouble(textA.getText());【代码3】//textB调用方法获取其中的文本:double b=Double.parseDouble(textB.getText());【代码4】// textC调用方法获取其中的文本:运行结果如图所示:5、实体对话框【代码1】//对话框设置为有模式:this.setModal(true);【代码2】//对话框设置为可见:this.setVisible(true);【代码3】//对话框设置为不可见:this.setVisible(false);【代码4】//创建对话框:FontDialog dialog=new FontDialog(this); 【代码5】//对话框设置为可见:dialog.setVisible(true);【代码6】//对话框设置设置标题为“字体对话框”:dialog.setTitle("字体对话框");运行结果如图所示:6、英语单词拼写练习【代码1】//将当前对象注册为自身的焦点视器:this.addFocusListener(this);【代码2】//将当前对象注册为自身的标监视器:this.addMouseListener(this);【代码3】//将当前窗口注册为label[k]的键盘监视器:label[k].addKeyListener(this);【代码4】//判断按下的是否是←键):if(e.getKeyChar()== KeyEvent.VK_LEFT);【代码5】//判断按下的是否是→键:if(e.getKeyChar()==KeyEvent.VK_RIGHT);运行结果如图所示:7、JLayeredPane分层窗格【代码1】//pane将组件b5放置在DRAG_LAYER层:pane.add(b5, pane.DRAG_LAYER);【代码2】//pane将组件b4放置在POPUP_LAYER层:pane.add(b4, pane.POPUP_LAYER);【代码3】//pane将组件b3放置在MODAL_LAYER层:pane.add(b3, pane.MODAL_LAYER);【代码4】//pane将组件b2放置在PALETTE_LAYER层:pane.add(b2, pane.PALETTE_LAYER);【代码5】//pane将组件b3放置在DEFAULT_LAYER层:pane.add(b1, pane.DEFAULT_LAYER);运行结果如图所示:8、使用表格显示日历【代码1】//使用数组rili和name创建table:table=new JTable(rili,name);【代码2】//使用数组rili和name创建table:table=new JTable(rili,name);【代码3】//使用数组rili和name创建table:table=new JTable(rili,name);运行结果如图所示:9、多文档界面(MDI)【代码1】//创建JdesktopPane对象:desk=new JDesktopPane();【代码2】//desk返回其中的全部内部窗体:JInternalFrame a[]=desk.getAllFrames();【代码3】//desk 将a[i]放置在DEFAULT_LAYER层:desk.setLayer(a[i],JDesktopPane.DEFAULT_LAYER);【代码4】//desk 将newInternalFrame放置在DRAG_LAYER层:desk.add(newInternalFrame,JDesktopPane.DRAG_LAYER);运行结果如图所示:之后在经过多次调试,程序运行正常,运行结果如图:3、在做第六个实验“拼写单词”时,在用键盘左右移动字母时,出现了“NULL”值。
java eclipse 实验报告
}
sum=sum+days[mon-1];
}
sum=sum+day;
System.out.println("该日是该年的第"+sum+"天");
}
}
3、
publicclassTask3 {
publicstaticvoidmain(String[]args)
六、教师评语
1)完成所有规定的实验内容,实验步骤正确,结果正确;
2)完成绝大部分规定的实验内容,实验步骤正确,结果正确;
3)完成大部分规定的实验内容,实验步骤正确,结果正确;
4)基本完成规定的实验内容,实验步骤基本正确,所完成的结果基本正确;
5)未能很好的完成规定的实验内容或实验步骤不正确或结果不正确。
for(intj=i;j<=9;j++)
if(i*j<10)
System.out.print(i+"*"+j+"="+i*j+" ");
else
System.out.print(i+"*"+j+"="+i*j+" ");
System.out.println();
}
}
}
4、publicclassTask4 {
while(j<b.length)
c[k++]=b[j++];
for(intl=0;l<k;l++)
JAVA实验研究报告一
Java语言程序设计实验报告一班级:姓名:学号:一、实验教案目的与基本要求Java程序设计的实验是Java程序设计课程重要的实践教案环节。
实验的目的不仅仅是验证理论知识,更重要的是通过上机加强学生的动手能力,掌握常用Java开发环境的使用方法,培养学生分析问题、解决问题、应用知识的能力和创新精神。
充分放手让学生自行设计、自主调试,真正培养学生的实践动手能力,全面提高学生的综合素质。
本课程是一门程序设计语言课程,通过本课程的学习,学生能够掌握Java语言程序的基本特点、基本编程方法和基本开发技巧,培养学生阅读、分析、设计和调试Java语言的能力,并具备一定的面向对象程序设计思想。
本课程的主要任务是在已学习的编程语言基础上,讲述Java语言的数据结构和语法规则;基本控制结构和编程技巧;Java语言面向对象的特点、编程方法和程序设计思路;Java语言的GUI程序和文件及I/O流的编程方法;能够正确配置Java开发环境,并使用相关的编辑、编译、调试、运行命令。
(1)掌握Java语言的编程技巧,能够独立进行面向对象的开发能力。
(2)具有根据编程需求独立查询Java类库文档及相关资料,完成系统的能力。
(3)具有分析、寻找和排除程序中常见问题的能力。
二、实验内容与收获(1)Java的安装与配置。
熟悉语言环境及简单程序设计的使用练习,正确配置Java开发环境(Eclipse 集成开发环境的安装、配置与使用)a)安装JDKSun公司为所有的Java程序员提供了一套免费的Java开发和运行环境。
可以通过IE或Netscape浏览器浏览网址:/j2se,根据提示可以下载支持Microsoft Windows操作系统的jdk-1_5_0-windows-i586.exe到本地硬盘。
安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到D:\jdk1.5.0目录下,如图1-2。
正确安装后,在JDK目录下有bin、demo、lib、jre等子目录,如图1-3,其中bin目录保存了javac、java、appletviewer等命令文件,demo目录保存了许多java的例子,lib目录保存了Java的类库文件,jre目录保存的是Java的运行时环境(JRE)。
第一次 Java 实验报告
str=JOptionPane.showInputDialog("猜小了,再输入你的猜测:");
guessNumber = Integer.parseInt(str);
}
}
System.out.print("猜对了");
}
}
编写Java程序(SwapMatrix.java)
要求:定义一个二维数组,并给二维数组赋值,分别打印原二维数组和行列互调后的二维数组。
while(guessNumber!=sysNumber)
{
if(guessNumber>sysNumber)
{
str=JOptionPane.showInputDialog("猜大了,再输入你的猜测:");
guessNumber = Integer.parseInt(str);
}
else if(guessNumber<sysNumber)
实验内容:
1、在控制台下求两个实数的最大值(CompareTwoNumbers.java)
要求:从键盘输入任意两个实数,比较两个数字的大小,将较大的数输出。数据输入和输出用Java的标准输入流和输出流来实现。请按照代码提示编写完整程序,并查看结果。
代码提示:
importjava.util.Scanner; //导入Scanner对象;
显示出的结果为
相应代码:
public class SwapMatrix {
public static void main(String[] args) {
// TODO Auto-generated method stub
int s[][]=new int[][]{{1 ,2 ,3},{4 ,5 ,6},{7, 8 ,9}};
Java实验报告一及作业总结二
Java实验报告⼀及作业总结⼆Java实验报告实验⼀ Java开发环境与简单Java程序⼀、实验⽬的(1)熟悉JDK开发环境(2)熟练掌握结构化程序设计⽅法⼆、实验内容1. 打印输出所有的“⽔仙花数”,所谓“⽔仙花数”是指⼀个3位数,其中各位数字⽴⽅和等于该数本⾝。
例如,153是⼀个“⽔仙花数”。
2. 编写Java程序,求13-23+33-43+…+973-983+993-1003的值。
3. 编程求1!+2!+3!+…+20!。
4. 编写Java程序,计算8+88+888+…前10项之和。
5. ⼀个数如果恰好等于它的因⼦之和,这个数就称为完数。
编写程序输出1000以内的所有完数。
6. 编写应⽤程序,输出满⾜1+2+3+…+n<8888的最⼤正整数。
7. 使⽤for循环打印下⾯的图形。
三、实验过程1. 打印输出所有的“⽔仙花数”,所谓“⽔仙花数”是指⼀个3位数,其中各位数字⽴⽅和等于该数本⾝。
例如,153是⼀个“⽔仙花数”。
实验源码:实验结果:1533703714072. 编写Java程序,求13-23+33-43+…+973-983+993-1003的值。
实验源码:实验结果:-5003.编程求1!+2!+3!+…+20!。
实验源码:实验结果:40379134.编写Java程序,计算8+88+888+…前10项之和。
实验源码:实验结果:12866086085. ⼀个数如果恰好等于它的因⼦之和,这个数就称为完数。
编写程序输出1000以内的所有完数。
实验源码:实验结果:6284966. 编写应⽤程序,输出满⾜1+2+3+…+n<8888的最⼤正整数。
实验源码:实验结果:1327. 使⽤for循环打印下⾯的图形。
四、实验总结:觉得还是要多练题,增加⾃⼰的逻辑,解决相关问题。
总结报告:⼀:类的定义:基本⽅式;public static 返回值类型⽅法名(参数类型参数名称,.......){⽅法体; return 返回值;}⽅法的三种调⽤⽅式;注意:void 只能⽤于单独调⽤;要有⼀个更重要的地⽅在学习类的定义的时候,定义成员⽅法的时候与基本⽅法不同,成员⽅法他不需要static关键字,这个要注意!熟悉代码 这⾥说明⼀下什么时候⽤什么时候不⽤static关键字:在定义成员⽅法时不⽤,即因为此时定义的⽅法将要由对象调⽤,⽽不像之前那样与主⽅法⼀起定义在⼀个类当中且由主⽅法直接调⽤。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
synchronized void print(String str) { System.out.print("[" + str); try { Thread.sleep(1000); } catch (InterruptedException e) { e.getStackTrace(); }
}} class Caller implements Runnable {
实验结果:
1. 建立的线程的内容输出不一致:
2. 修改后:
实验体会
实验一:多线程同步
班级:姓名:学号:来自实验目的:通过线程的创建、启动和多线程的同步,掌握线程的使用和多线程之间
的数据共享和传递。
实验内容:
创建线程;启动线程;线程操作;多线程同步操作。
实验步骤:
1. 实验步骤 01. 参考资料完成线程的创建、启动 02. 实现多线程的同步 03. 完成多线程之间的数据共享和传递 04. 综合实验代码、输出运行结果
/*
* 延时 1 秒后,先输出[main],然后输出启动主线程 否 则,先输出启动主线程,然后输出[main] 延时和不延时的结果不一样
*/ Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } System.out.println("[" + Thread.currentThread().getName() + "]"); System.out.println("--------------------------------"); Share share = new Share(); Caller call1 = new Caller(share, "A"); Thread t1 = new Thread(call1); t1.start(); Caller call2 = new Caller(share, "B"); Thread t2 = new Thread(call2); t2.start(); Caller call3 = new Caller(share, "C"); Thread t3 = new Thread(call3); t3.start(); } }
String str; Share share; Thread thread; public Caller(Share share, String str) {
this.share = share; this.str = str; } public void run() { share.print(str); System.out.println("]"); System.out.println("启动主线程:" + Thread.currentThread().getName()); System.out.println("主线程ID:" + Thread.currentThread().getId()); System.out.println("主线程优先级:" + Thread.currentThread().getPriority()); System.out.println("主线程HashCode:" + Thread.currentThread().hashCode()); }} public class ThreadSynchronized { public static void main(String[] args) { MainThread mt = new MainThread(); // 将实现Runnable的类的实例传入构造函数 Thread thread = new Thread(mt); thread.start(); // 获取主线程的名字 try {
2. 实验源代码 package Thread; /** * 多线程同步 * @author SiRuYan */ class MainThread implements Runnable {
// 重写run方法 public void run() {
// 获取当前线程的名字 System.out.println("启动主线程:" + Thread.currentThread().getName()); System.out.println("主线程ID:" + Thread.currentThread().getId()); System.out.println("主线程优先级:" + Thread.currentThread().getPriority()); System.out.println("主线程HashCode:" + Thread.currentThread().hashCode()); }} class Share {