final关键字

4.1特征:

  • abstract 修饰的类是抽象类:
  • 1: 抽象类不能实例化。
  • 2: 抽象类中有抽象方法,子类必须重写。
  • 3: 抽象类中可以有非抽象方法,不要求子类强制实现。
  • 4:如果一个类中,有抽象方法,那么这个类一定是抽象类。
  • 5: 如果一个类是抽象类,这个类中一定有抽象方法吗?不一定。

/**

  • 宠物父类:抽象类
  • @author hadoop

*/
public abstract class Pet {

private String name;
private int age;
private int health;
private int love;


public String getName() {
	return name;
}
public void setName(String name) {
	this.name = name;
}
public int getAge() {
	return age;
}
public void setAge(int age) {
	this.age = age;
}
public int getHealth() {
	return health;
}
public void setHealth(int health) {
	this.health = health;
}
public int getLove() {
	return love;
}
public void setLove(int love) {
	this.love = love;
}
public Pet() {
	super();
}
public Pet(String name, int age,  int health, int love) {
	super();
	this.name = name;
	this.age = age;
	this.health = health;
	this.love = love;
}

// 抽象类中有抽象方法。
public abstract void eat();

// 非抽象方法。
public void show(){
	
};

5接口
什么是接口?
接口不是类,interface修饰 一种数据类型。
5.1特征
接口中,可以有常量。使用static final 修饰的。默认被修饰。
接口中,可以有方法。使用abstract 修饰的。默认被修饰。
接口中,没有构造方法。
接口,不能被实例化。

一个类,如果实现两个接口,接口使用逗号分离,必须实现两个接口中所有的方法。

问题?需要你用代码去论证一下。

问:抽象类能实现接口吗? 可以。
问:接口能继承抽象类吗? 不可以。
问:抽象类能继承抽象类吗? 可以。
问:接口能继承接口吗? 可以。

接口可以继承接口: 子接口可以实现父接口里的方法。实现了子接口的类可以直接调用。

顶级提问?
抽象类和接口有什么相同点和不同点?
请根据:
属性:
接口中的属性默认被static final 修饰的常量。
抽象类中可以有变量。
接口常量只能被public default 修饰。
方法:
接口中的方法,只有默认被abstract修饰的抽象方法。
抽象类中可以有抽象方法也可以有非抽象方法。
构造方法
接口中没有构造方法。
抽象类有构造方法。

相同点:
抽象类和接口都不能实例化。

不同点: 接口只能被实现
抽象类只能被继承。
抽象类是类,接口不是类。

6final关键字

  • final : 最终的。不可改变的。
  • final 修饰变量。表示常量,值不能再次赋值。常量要求全部大写。
  • final 修饰方法。表示方法不能被重写。
  • final 修饰类。表示类不能被继承。
  • final 修饰对象,当前对象不能再new实例。
  • String 就是被final修饰的类,不能被继承。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值