黑马程序员_抽象类和接口

------- android培训java培训、期待与您交流! ----------

★抽象类

  • 我们在定义一个类的时候,常常需要定义方法来描述该类的行为特征,
  • 但有的时候这个(方法)的{方法体}怎样写无法确定,所以,java
  • 中允许在定义一个类的时候不写方法体,但是这样的类必须加上abstract关键字来修饰。
  • 没有方法体的抽象类是不能被直接调用的,如果想调用抽象类中的方法,
  • 就需要创建一个子类,在子类中将抽象类的方法进行实现。
实例演示:

package cn.itbasis;
/*
 * 演示一个抽象类中如何建立子类调用这个抽象类的抽象方法
 * 需要一个抽象类Animal,一个测试类main,一个Dog类
 * Dog类继承抽象类Animal类
 */
public class ChouXiangLei {
	//主函数
	public static void main(String[] args) {
		Dog dog = new Dog();
		dog.shout();
	}
}
//创建一个抽象类
abstract class Animal{
	//定义抽象方法
	abstract void shout();
}
//定义Dog类继承抽象类Animal
class Dog extends Animal{
	//在实现抽象类方法shout()
	void shout(){
		System.out.println("汪... ...");
	}
}


★接口:定义接口用interface 实现接口用implements
  • 如果一个类中的所有的方法都是抽象的,则可以将这个类用另外一种方式来表示,即接口
  • 接口需要要interface关键字来声明
实例演示:
  • 由于接口中的方法都是抽象方法,因此不能通过实例化对象的方式来调用接口中的方法。
  • 此时,需要定义一个类,并使用implements关键字实现接口中的所有方法。
package cn.itbasis;

public class ImplementsDemo {
	public static void main(String[] args) {
		Dog dog = new Dog();
		dog.breathe();
		dog.run();
	}
}
//定义一个Animal接口
interface Animal{
	//定义全局变量
	int ID = 1;
	//定义抽象方法breathe()
	void breathe();
	//定义抽象方法run()
	void run();
}
//Dog类实现Animal接口
class Dog implements Animal{
	//实现breathe()方法
	public void breathe(){
		System.out.println("狗狗在呼吸");
	}
	//实现run()方法
	public void run(){
		System.out.println("狗狗在跑");
	}
}




★学习总结:
  • 接口:定义接口用interface 实现接口用implements 
  • 接口中的方法都是抽象的,不能被实例化,就不能调用其方法,而使用implements关键字实现接口
  • 中的方法,可以使部分实现,也可以使全部都实现。
  • 接口可以通过extends多继承,中间用逗号隔开。
  • 一个类可以通过implements多实现,被实现的多个接口之间用逗号隔开。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值