- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVA基础知识练习1(含答案)
JAVA基础知识练习(含答案)
一、思考题
1.Overload(方法重载)和Override(方法覆盖)的区别。
答:
相同点:
都要求方法同名
都可以于于抽象方法和非抽象方法之间
不同点:
方法覆盖要求参数签名必须一致,而方法重载要求参数签名必须不一致。
方法覆盖要求返回类型必须一致,而方法重载不做限制。
方法覆盖只能用于子类覆盖父类的方法,方法重载用于同一个类的所有方法(包括从父类中继承而来的方法)。
方法覆盖对方法的访问权限和抛出的异常有特殊的要求,而方法重载没有限制。
父类的一个方法只能被子类覆盖一次,而一个方法所在的类中可以被多次重载
2.在创建派生类的对象的时候,基类与派生类中构造方法的调用顺序怎样?
答:编译器会一直上溯到最初类,执行该类构造方法,然后依次执行各子类构造函数
3.比较this和super的区别
答:this是引用本对象,super是引用父类的对象。
4.什么是多态?面向对象程序设计为什么要引入多态的特性?使用多态有什么优点?
答:多态基本含义是“拥有多种形态”,具体指在程序中用相同的名称来表示不同的含义。例如:用同一方法名来表示不同的操作;面向对象程序设计引入多态特征的原因是,使程序更具有可读性,重复利用性;采用多态技术的优点:
引进多态技术之后,尽管子类的对象千差万别,但都可以采用 基类引用.方法名([参数]) 统一 方式来调用,在程序运行时能根据子对象的不同得到不同的结果。这种“以不变应万变”的形式可以规范、简化程序设计,符合软件工程的“一个接口,多种方法”思想。
二、编程题
1.类、对象、方法、继承
(1) 声明矩形类Rect,它封装了:
两个成员变量(访问权限为private):
float length; //矩形的长度,float类型
float width; //矩形的宽度,float类型
9个成员方法(访问权限均为public):
Rect() //默认构造方法
Rect(float l, float w) //带参数的构造方法
void setLength(float l) //改变矩形的长度
float getLength() //得到矩形的长度
void setWidth(float w) //改变矩形的宽度
float getWidth() //得到矩形的宽度
String toString() //输出矩形信息。返回形如: 长度: xxx, 宽度:xxx”
//字符串(其中:xxx表示相应的数值).
float getPerimeter() //得到矩形的周长
float getArea() //得到矩形的面积
(2) 再定义一个长方体类Recter,它继承了矩形类Rect (上一题已定义),并增加了:
一个成员变量(访问权限为private):
height //长方体的高度,float类型
三个成员方法(访问权限均为public):
Recter (float l, float w,float h) //带参数的构造方法,
//需要调用基类带参数构造方法.
float getVolume( ) //返回长方体的体积 (计算公式:底面积×高度)
String toString() //重写toString()方法,返回形如:“矩形长度: xxx, 矩形
//宽度:xxx,长方体的高度:xxx,矩形底面积:xxx,长方体
//体积:xxx”字符串(其中:xxx表示相应的数值).
(3) 最后定义一个主类:RectTest,在它的main()方法中创建一个矩形长度为10.5,矩形宽度为:5.5, 长方体的高度为:6.5的长方体对象ry,然后调用toString()方法输出其相应信息。
2.写出下列实现多态的程序的运行结果
class Animal {
public void display(){
System.out.println(我是一只动物,...);
}
}
class Cat extends Animal {
public void display(){
System.out.println(我是能捉老鼠的猫,...);
}
}
class Dog extends Animal {
public void display(){
System.out.println(我为主人尽忠职守的猎犬,...);
}
}
public class AnimalTest {
public static void main(String args[]
您可能关注的文档
最近下载
- 竣工决算审计报告推荐.docx VIP
- 01XXX项目年度服务总结报告(视频会议系统).docx
- 人教版七年级英语上册期末总复习语法知识点专项练习100题( 含答案).pdf
- 专题11 状语从句100题(高考真题+名校模拟)-备战2025高考英语语法填空专项分类训练(高考真题+名校模拟真题).docx
- GBT 11348.5-2008 旋转机械转轴径向振动的测量和评定 第5部分:水力发电厂和泵站机组.docx
- 部编版五年级上册语文第七单元《____即景》作文500字10篇.docx VIP
- 优质课一等奖高中语文必修二《赤壁赋》 (14).ppt VIP
- 必威体育精装版赤壁赋优秀公开课省公开课金奖全国赛课一等奖微课获奖PPT课件.pptx
- 质量控制管理程序.pdf VIP
- 质量控制管理程序.pdf
文档评论(0)