练习(三)
来源:互联网 发布:手机恶意坑人软件 编辑:程序博客网 时间:2024/06/05 17:06
1.简述重载(Overload)与重写(Override)的区别。
1).方法重写要求参数列表必须一致,方法重载要求参数列表必须不一致
2).方法重写要求返回类型必须一致,方法重载则没有这个限制
3).方法重写只能用于子类覆盖父类的方法,方法重载用于同一个类的所有方法中(包括从父类中继承而来的方法)
4).方法重写对方法的访问权限和抛出的异常有特殊要求,而方法重载在这方面没有任何限制
5).父类的一个方法只能被子类重写(覆盖)一次,而一个方法在所在的类中可以被重载多次。
2.完成刺客刺杀总统的场景,要求:刺杀成功后,将刺客的名字和总统的名字都显示出来。package kill;/**总统类 */public class Present { static String name; public Present(){ } public Present(String n){ name=n; }}
package kill;/*杀手类 * */public class Killer { String name; public Killer(){ } public Killer(String n){ name=n; } public void killPresent(Present prensen){ System.out.println("刺客成功刺杀总统"); System.out.println("总统叫"+Present.name+",刺客叫"+name); }}
package kill;public class Test {public static void main(String[] args) {Killer killer=new Killer("奥斯瓦尔德");Present present=new Present("肯尼迪");killer.killPresent(present);}}
结果截图:
3.建立一个长方形的类 包括属性,长、宽
1) 在构造方法中,给长方形的属性初始化。
2) 写两个方法,分别求出长方形的周长和面积。
3) 写一个方法,以长方形的对象为参数,求出两个长方形的周长差。
package rectangle;public class Rectangle { double len; // 矩形的长 double width; // 矩形的宽 public Rectangle(){ } public Rectangle(double l,double w){ //初始化长方形的属性 len=l; width=w; } public double perimeter(double len,double width){ //自己写一个计算周长的方法 return 2*(len+width); } public void area(Rectangle rectangle){ //自己写的一个计算面积的方法 System.out.println("长方形面积为:"+len*width+"平方厘米"); } public double perimeterCha(Rectangle rec) { //以长方形的对象为参数写的计算周长差的方法 return this.perimeter(len,width)-rec.perimeter(rec.len,rec.width); } public double getLen(){return len; } public double getWid(){return width; } public void setperimeter(double l,double w){this.len=l;this.width=w; }}
package rectangle;public class ObjectDemo {public static void main(String[] args) {Rectangle rec=new Rectangle(2.0,1.0);Rectangle rec1=new Rectangle(1.0,1.0); double i=rec.perimeter(rec.getLen(),rec.getWid());System.out.println("长方形周长为:"+i+"厘米"); //输出周长rec.area(rec); //输出面积 System.out.println("两长方形周长之差为:"+rec.perimeterCha(rec1)+"厘米"); //输出周长差}}结果截图:
4. 创建拥有继承结构的两个类,两个类拥有相同定义的show()方法,但是方法体中的内容不同,分别创建一个父类对象和子类对象,分别调用show()方法,观察结果。
package show;/*父类*/public class Father { public void show(){ System.out.println("商品产地名称是西安"); }}
package show;/*子类*/public class Child extends Father{public void show(){System.out.println("食品名称是糖果。");}}
package show;public class Test {public static void main(String[] args) {Father father=new Father();father.show(); /*调用父类show()方法*/Child child=new Child();child.show(); /*调用子类show()方法*/}}结果截图:
阅读全文
2 0
- 查询练习(三)
- MapReduce练习(三)
- Scala练习(三)
- 听课练习(三)
- JavaScript练习(三)
- C练习(三)
- RecyclerView 练习(三)
- acm练习(三)
- python练习(三)
- 练习(三)
- python练习(三)
- javscript练习(三)
- 练习(三)
- 笔试题练习(三)
- awk 实例练习 (三)
- Jquery选择器练习(三)
- 菜鸟练习PAT(三)
- 练习代码(三)复用类
- 《RabbitMQ实战指南》笔误及改进记录
- BZOJ1103(POI2007)[大都市meg]--DFS序+树状数组
- 一次数据库执行结果慢的梳理过程
- linux 下svn 忽略某类文件和目录
- 从键盘任意输入一个整数,编程判断它的奇偶性
- 练习(三)
- MyBatis框架核心之(三)注解使用接口映射
- Objective C 简历
- HDU-4819 Mosaic (二维线段树)(2013 Asia Regional Changchun)
- Android颜色
- deeplearning.ai-lecture1-building deep neural network steps
- 数据结构实验之查找一:二叉排序树
- ubuntu {DRDY ERR}.........
- CS229学习笔记之概率解释与局部加权线性回归