第六章作业

1.this和supper各有几种用法

this用法:
(1)this.域变量,this.成员方法。当成员方法的形参名与域变量名相同,或者成员方法的局部变量名与域变量名相同时,在方法内借助this来明确表示用的是类的域变量。
(2)this(参数)——引用重载的构造方法。
(3)this指代当前对象。
supper用法:
(1)super.域变量,supper.成员方法(参数)。
(2)supper(参数)——构造方法的继承

2.子类对象实例化的具体过程是什么?

(1)为子类对象分配内存空间,对域变量进行默认初始化。
(2)绑定构造方法,将new对象中的参数传递给构造方法的形式参数。
(3)调用this或supper语句,注意二者必居其一,但不能同时存在。
(4)进行实例变量的显示初始化操作。
(5)执行当前构造方法体中的程序代码。

3.类的域变量和方法中定义的局部变量在初始化上有何区别?

类的域变量在类初始化的时候就创建了,而方法中定义的局部变量只有在调用该方法的时候才会进行初始化。

4.模仿形成抽象类的过程,自选角度,形成一个自己的抽象类,并在程序的类继承和引用中体现抽象类的作用。

abstract class Shapes{
	protect int x,y;
	public Shapes(int x,int y){
		this.x=x;
		this.y=y;
	}
	abstract public double getArea();//继承时进行复用
	}
class Rect extends Shapes{
	public double getArea(){
		return x*y;
	}
	public double getArea(Shapes s){//抽象类的引用
		return s.getArea();
	}
}

5.接口有什么作用?自己定义一个接口,并给出实现类和使用类。

作用:先定义接口,实现者按照接口实现,使用者按照接口使用。当实现者内部发生变化时,只要接口不发生变化,使用者就不必更改其代码。
interface Washer{//定义接口
	public abstrct void startUp();
}
class RoseBrand implements Washer{//实现接口
	public void startUp(){
		System.out.printLn("stratUp")
	}
}
public class Consumer{
	public static void main(String args[]){
		Washer w=new RoseBrand();
		w.startUp();
	}
}

6.抽象类与接口的异同点是什么?

相同点:
(1)都可以被继承
(2)都不能被实例化
(3)都可以包含方法声明
(4)派生类必须实现未实现的方法
不同点:
(1)抽象类可以有构造方法,接口中不能有构造方法
(2)抽象类可以有普通成员变量,接口中没有普通成员变量
(3)抽象类可以包含静态方法,但接口不能
(4)一个类可以实现多个接口,但只能继承一个抽象类
(5)接口可以被多重实现,抽象类只能单一被继承
(6)如果抽象类实现接口,则可以把接口中方法映射到抽象类中作为抽象方法而不必实现,而在抽象类的子类中实现接口中的方法

7.引用比较方法有哪些?

(1)"==":比较引用类型变量的地址值是否相等
(2)equal方法:比较对象的内容

8.内部类的作用是什么?什么情况下使用匿名内部类?

内部类具有封装性
一般在只用到一个类实例,类在定义后马上用到,类非常小的情况下使用匿名内部类。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值