- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验4 Jav语言面向对象基础(下)
实验4 Java语言面向对象基础(下)
实验目的
通过编程和上机实验理解Java语言是如何体现面向对象编程基本思想,掌握面向对象程序设计的方法,了解类的继承性和多态性的作用,了解接口的作用。
实验内容
在你的文件夹下建立sy4的子文件夹,本次实验中输入的源文件放在该文件夹下。
(2) 类的继承性练习
2.1创建将被继承的类
(1) 程序源代码如下。
public class EXP3_7
{
protected String xm; //具有保护修饰符的成员变量
protected int xh;
void setdata(String m,int h) //设置数据的方法
{
xm =m;
xh = h;
}
public void print() //输出数据的方法
{
System.out.println(xm+, +xh);
}
}
(2) 编译源程序。
2.2 创建将被继承的类
(1) 程序功能:通过EXP3_7类产生子类EXP3_8,其不仅具有父类的成员变量xm(姓名)、xh(学号),还定义了新成员变量xy(学院)、xi(系)。在程序中调用了父类的print 方法,同时可以看出子类也具有该方法。
(2) 程序源代码如下。
class EXP3_8 extends EXP3_7 {
protected String xy;
protected String xi;
public static void main(String args[]){
EXP3_7 p1 = new EXP3_7();
p1.setdata(李四,12321) ;
p1.print();
EXP3_8 s1 = new EXP3_8() ;
s1.setdata(张三,12345); //调用父类的成员方法
s1.xy=信息工程学院; //访问本类的成员变量
s1.xi=计算机系; //访问本类的成员变量
s1.print();
System.out.print(s1.xm+, +s1.xy+, +s1.xi);
}
}
(3) this、super的使用
class Point {
protected int x, y; // 1)
Point(int a, int b) {
setPoint(a, b);
}
public void setPoint(int a, int b) {
x=a;
y=b;
}
}
class Line extends Point {
protected int x, y;
Line(int a, int b) {
super(a,b); //功能:调用父类的构造函数
setLine(a, b);
}
public void setLine(int x, int y) {
super.x =x+x;//功能:给1)中的x赋值
super.y =y+y; //功能:给1)中的y赋值
}
public double length() {
int x1=super.x, y1=super.y, x2=this.x, y2=this.y;
return Math.sqrt((x2-x1) * (x2-x1) + (y2-y1) * (y2-y1));
}
public String toString() {
return 直线端点:[ + super.x + , + super.y + ] [ +
x + , + y + ] 直线长度: + this.length();
}
}
public class EXP3_10{
public static void main(String args[]) {
Line li
文档评论(0)