抽象类和接口

抽象类

1、抽象方法和抽象类的由来
抽象方法:没有方法体的非静态成员方法
为何会有抽象方法?
举例:比如:Java程序和各种数据库的连接,对于Java而言,无法具体实现。于是Java中只定义标准,不具体实现,具体的实现交给各个数据库厂商。
2、声明
在class前加关键字abstract
3、成员

// 抽象类的声明:在class关键字前面用 abstract 修饰

public abstract class Shape {

	// 成员变量

	String name; // 图形的名称

	double c;   // 周长

	double area; // 面积

	

	// 构造方法

	public Shape() {}

	

	// 成员方法(抽象方法)

	public abstract double getC();

	public abstract double getArea();

	

	// 成员方法

	public void showMsg() {

		System.out.println("图形:" + name);

		System.out.println("面积:" + area);

		System.out.println("周长:" + c);

	}

}

比普通类多了抽象方法

4、抽象类和抽象方法的关系

抽象类中可以有抽象方法,也可以没有
含有抽象方法的类一定是抽象类

5、抽象类的特点

1、有构造方法,但是不能创建对象,why?
抽象类必须通过继承进行实例化,不能直接创建对象。
2、抽象类的子类
普通类
必须实现抽象类的所有抽象方法、
抽象类
可以实现抽象类的部分抽象方法
3、abstract关键字不能修饰构造方法、静态方法、变量
abstract关键字可以修饰类、非静态成员方法
4、abstract关键字不可以和哪些关键字共存?
final:不能,因为抽象类必须有子类,而final定义的类不能有子类
static:外部抽象类无法使用,内部抽象类可以使用。
private:不能,因为private修饰后无法进行继承,而抽象类可以被继承。

final关键字

1、可以修饰类、变量、成员方法
2、修饰类:该类为最终类
最终类的特点:不能被继承,即不可以有子类
3、修饰变量:该变量为有名常量
4、修饰成员方法:最终方法
特点:不可以被重写

接口

1、为何使用接口?
接口可以解决Java中类之间的单继承问题
2、接口作用
一个类可以同时实现多个接口,解决单继承问题
接口与接口之间是多继承
把方法的声明和方法的实现进行了分离
接口对外表现的是一种能力(提供服务)
3、接口的声明
使用关键字 interface eg:public interface UserServiceInterface{}
4、接口的成员
公有的静态成员常量
public static final double area = 22; // 静态成员常量 ,public static final可省略
公有的静态方法(JDK8以上)
抽象方法,接口没有构造方法
5、类与类、类与接口、接口与接口之间的关系
类与类:单继承
类与接口:实现(类实现接口),一个类可以实现多个接口
接口与接口:多继承

方法的重写

方法的重载:
在同一个类、接口中,出现了方法名相同,方法的参数列表不同的现象,称为:方法的重载。
方法的重写:
有继承或实现关系,子类或实现类可以继承下来的方法,并且是非静态的
子类重写父类的方法,实现类重写接口的方法
要求:不能修改父类或实现类的方法声明。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值