Java抽象类和接口的语法声明及详解

抽象类的声明:在Java中使用abstract修饰的类叫抽象类

在Java中使用abstract修饰的方法叫抽象方法
语法格式:

abstract class Person {
 
 //正常类的属性
 String name;
 //普通的成员方法
 public void eat () {
     System.out.print("吃饭");
 }
 //抽象方法   没有方法体的方法  没有大括号的
 public abstract void sleep ();
 
}

抽象类的详解:

1.如果一个类中有抽象方法,那么这个类一定是抽象类

2.抽象方法是一个没有方法体的方法,是一个不完整的方法

3.抽象类中能有普通方法吗?  可以

4.抽象类能被实例化吗? 不能

5.抽象类不能被实例化,然后可以使用普通类去继承抽象类

6.在子类中 必须去重写父类的所有的抽象方法,让抽象方法变得有意义

7.在抽象类中,非抽象的方法能不能在子类被重写的,可以的

8.一个抽象类可以继承另外一个抽象类

9.一个抽象类也可以继承一个非抽象的类
接口

语法格式:

interface 接口的名字 {
 属性
 方法
}
package com.qf.c_interface;

interface USB {//接口的语法格式
	//Abstract methods do not specify a body   抽象的方法的不能有一个方法体
	public   void  connection();
	//接口下面的方法都是抽象的方法 是默认的抽象的方法
	
}
//接口无法被实例化 那咋办?   只能写一个普通类去实现(implements) 接口
class Computer implements USB{
	
	
	public void coding () {
		System.out.println("敲代码");
	}

	@Override
	public void connection() {
		System.out.println("连接u盘");
		
	}
}
public class Demo1 {
	public static void main(String[] args) {
		Computer computer = new Computer();
		computer.coding();
		computer.connection();
	}
}

接口的详解:

语法格式:

1.使用关键字 interface来声明Java中的接口

2.接口下面是可以有属性的, 只不过属性必须赋值,因为默认带了 public static final 表示的是常量

3.接口下面 的方法都是抽象方法,尽管没有带abstract 默认也是public的

4.接口下面是一般都是抽象方法 有特殊的情况呢jdk1.8之后,增加了可以使用default修饰的方法 是可以带有方法体的

5.接口下面没有构造方法,就意味无法实例化

6.用一个普通类去实现(implements)接口

7.实现接口的时候一定要重写所有的抽象的方法,默认的方法可以重写也可以不写

8.一个类可以实现(implements)多个接口 写法 implements D, C,F

9.一个接口可以去继承(extends)另外一个接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值