抽象类 和接口

抽象类

什么是抽象类?
abstract 修饰的类叫做抽象类,抽象类必须有子类继承.
什么是抽象方法?
使用abstract修饰的方法叫做抽象方法,抽象方法不能有具体的实现,子类必须重写。

特征

1: 抽象类不能实例化。
2: 抽象类中有抽象方法,子类必须重写。
3: 抽象类中可以有非抽象方法,不要求子类强制实现。
4: 如果一个类中,有抽象方法,那么这个类一定是抽象类。
5: 如果一个类是抽象类,这个类中不一定有抽象方法.
6: 在抽象类中写static 在语法上允许,但没必要.

代码

public abstract class Pet {

private String name;
public String getName() {
	return name;
}
public void setName(String name) {
	this.name = name;
}

public Pet() {
	super();
}
public Pet(String name,) {
	super();
	this.name = name;
}

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

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

接口

什么是接口?

  • 接口不是类,interface 修饰 一种数据类型。

1:接口很像抽象类
2:接口很像一个父类

public interface DemoInterface {

//接口中可以有属性
public static final int A = 10; //final 修饰的变量为常量,不能修改.变量名大写.

//接口中可以有抽象方法
public abstract void show();

}

public interface DemoInterface2 {

}

public abstract class DemoAbstract {

}

  • 普通类 可以[实现]某个任意接口

  • Demo只能有一个父类,可以有很多个接口.

public class Demo extends DemoAbstract implements DemoInterface,DemoInterface2{

public void show(){
	System.out.println("hello  "+A);
}

}

  • 接口中,可以有常量。使用static final 修饰的。默认被修饰。
  • 接口中,可以有方法。使用abstract 修饰的。默认被修饰。
  • 接口中,没有构造方法。
  • 接口,不能被实例化。

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

final关键字

  • final : 最终的。不可改变的。
  • final 修饰变量。表示常量,值不能再次赋值。常量要求全部大写。
  • final 修饰方法。表示方法不能被重写。
  • final 修饰类。表示类不能被继承。
  • final 修饰对象,当前对象不能再new实例。
  • String 就是被final修饰的类,不能被继承。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值