学号姓名Java语言实验报告二Word文档下载推荐.docx

上传人:b****5 文档编号:19354897 上传时间:2023-01-05 格式:DOCX 页数:13 大小:355.56KB
下载 相关 举报
学号姓名Java语言实验报告二Word文档下载推荐.docx_第1页
第1页 / 共13页
学号姓名Java语言实验报告二Word文档下载推荐.docx_第2页
第2页 / 共13页
学号姓名Java语言实验报告二Word文档下载推荐.docx_第3页
第3页 / 共13页
学号姓名Java语言实验报告二Word文档下载推荐.docx_第4页
第4页 / 共13页
学号姓名Java语言实验报告二Word文档下载推荐.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

学号姓名Java语言实验报告二Word文档下载推荐.docx

《学号姓名Java语言实验报告二Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《学号姓名Java语言实验报告二Word文档下载推荐.docx(13页珍藏版)》请在冰豆网上搜索。

学号姓名Java语言实验报告二Word文档下载推荐.docx

}

}

源文件:

MyDate.java

publicclassMyDate{

privateintday=1;

privateintmonth=1;

privateintyear=2000;

publicvoidprint(){

System.out.println(day+"

-"

+month+"

+year);

publicMyDate(intday,intmonth,intyear){

this.day=day;

this.month=month;

this.year=year;

publicMyDate(MyDatedate){

this.day=date.day;

this.month=date.month;

this.year=date.year;

publicMyDateaddDays(intdate){

MyDaten=newMyDate(this);

n.day=n.day+date;

returnn;

[运行结果]

[实验结论与收获]

了解了什么是类、类基本格式,对象以及构造方法

实验题2

修改程序,使得在子类中可以对两个f分别进行赋值和显示操作

记录调试过程、步骤、程序和运行结果

classParent{

publicintf;

publicvoidsetF(inta){f=a;

publicintgetF(){returnf;

publicclassChildextendsParent{

publicdoubled;

publicstaticvoidmain(String[]args){

Childc=newChild();

c.f=100;

c.setF(30);

System.out.println("

Parent:

"

+c.getF());

Child:

+c.f);

学会修改程序,分别对F进行赋值和显示操作

实验题3

完成程序,使用super创建重写的方法

调试并记录结果

publicclassEmployee{

publicStringname="

zhang"

;

publicdoublesalary=2000;

publicStringgetDetails(){

return"

Name:

"

+name+"

\n"

+"

Salary:

+salary;

publicclassManagerextendsEmployee{

publicStringdepartment="

Office"

returnsuper.getDetails()+"

Department:

+department;

publicclassEx2_3{

publicstaticvoidmain(Stringargs[]){

Employeee=newEmployee();

Managerm=newManager();

Employee:

+"

+e.getDetails());

Manager:

+m.getDetails());

学会super的创建使用方法

实验题4

修改并完成程序

说明程序错在哪里,如何修改

classParent{

publicvoiddoSomething(){}

classChildextendsParent{

publicvoiddoSomething(){}

publicclassEx2_4{

publicstaticvoidmain(Stringargs[]){

Parentp1=newParent();

Parentp2=newChild();

p1.doSomething();

p2.doSomething();

错误出在privatevoiddoSomething(){}修改正确的publicvoiddoSomething(){}

调试语句publicstaticvoidmain(Stringargs[]){

 

实验题5

执行程序记录程序结果

classCount{

publicstaticintcounter;

static{

counter=100;

System.out.println("

instaticblock!

);

publicclassEx2_5{

publicstaticvoidmain(String[]args){

counter="

+Count.counter);

执行程序得到正确结果

实验题6

将程序1Parent类和程序2Child类存于同一包(目录)中,并调试程序,记录结果。

将程序1Parent类存于当前包的子包parent中,程序2Child类存于当前包中,并调试程序,记录结果。

比较以上两题结果的不同。

privateintf1=1;

intf2=2;

protectedintf3=3;

publicintf4=4;

privatevoidfm1(){

infm1()f1="

+f1);

voidfm2(){

infm2()f2="

+f2);

protectedvoidfm3(){

infm3()f3="

+f3);

publicvoidfm4(){

infm4()f4="

+f4);

classChildextendsParent{

privateintc1=21;

publicintc2=22;

privatevoidcm1(){

incm1()c1="

+c1);

publicvoidcm2(){

incm2()c2="

+c2);

publicstaticvoidmain(Stringargs[]){

inti;

Parentp=newParent();

i=p.f1;

i=p.f2;

i=p.f3;

i=p.f4;

p.fm1();

p.fm2();

p.fm3();

p.fm4();

i=c.f1;

i=c.f2;

i=c.f3;

i=c.f4;

c.fm1();

c.fm2();

c.fm3();

c.fm4();

i=c.c1;

i=c.c2;

c.cm1();

c.cm2();

同一包

不同包

通过运行结果可以看出:

1、不管是否在同一包中,子类永远不能访问父类的private方法。

2、同一包中,父类与子类都可以访问default方法、protected方法及public方法

3、在不同包中创建的父类对象,不能访问父类的default方法、protected方法、private方法

4、在不同包中创建的子类对象,通过继承,可以访问父类中的protected方法。

掌握了不同包之间,各种方法的访问权限。

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

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1