Java接口和修饰符

接口(Interface):
接口是抽象方法的集合,只能继承接口,不能实例,通过接口的实现类使用,接口可以继承多个接口,只能写抽象方法。
格式:[修饰符] interface 接口名 extends 父接口1,父接口2,…
{
//零到多个静态常量定义…
//零到多个抽象方法定义…
}
静态常量:必须初始化;
抽象方法:只能用public修饰符;

interface JieKou{
   //抽象方法
   public void say();
   public void eat();
}

在Java中,类是不允许多继承的,但接口允许多继承。
在接口的多继承中使用extends关键字,在其后跟着继承接口。

public interface JieKouOne extends JieKou , JieKouTwo 

接口的实现:
创建一个接口的实现类,可以实现多个接口。可以被类继承。
命名:在接口类后面加上Impl(规范)。
实现接口:类使用implements关键字实现接口。在类声明中,Implements关键字放在class声明后面。当类实现接口的时候,类要实现接口中所有的方法。否则,类必须声明为抽象的类。
格式:…implements 接口名称[, 其他接口名称, 其他接口名称…, …] …

//接口的实现类
public class ShiXianImpl implements JieKou{
 
   public void say(){
      System.out.println("小明说");
   }
 
   public void eat(){
      System.out.println("小明吃");
   } 
   
   public static void main(String args[]){
      ShiXianImpl m = new ShiXianImpl ();
      m.say();
      m.eat();
   }
}

接口和类的区别:

接口不能实例化对象。
接口没有构造方法。
接口中所有的方法必须是抽象方法。
接口不能包含成员变量,除了 static 和 final 变量。
接口不是被类继承了,而是要被类实现。
接口支持多继承。

修饰符:
访问控制符(public、friendly、abstract、final)

public:将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。

friendly:默认的修饰符,只有在相同包中的对象才能使用这样的类。

abstract:将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。

final:将一个类生命为最终(即非继承类),表示他不能被其他类继承。

成员变量修饰符(public、private、protected、friendly、final、static)

public:指定该变量为公共的,他可以被任何对象的方法访问。

private:指定该变量只允许自己的类的方法访问,其他任何类(包括子类)中的方法均不能访问。

protected:指定该变量可以别被自己的类和子类访问。在子类中可以覆盖此变量。

friendly:在同一个包中的类可以访问,其他包中的类不能访问。

final:指定此变量的值不能变。

static:指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。

方法修饰符(public、private、final、friendly、static、synchronize、native)

public:指定该方法可以从所有类访问

private:指定此方法只能有自己类等方法访问,其他的类不能访问(包括子类)

protected:指定该方法可以被它的类和子类进行访问。

final:指定该方法不能被重载。

static:指定不需要实例化就可以激活的一个方法。

synchronize:同步修饰符,在多个线程中,该修饰符用于在运行前,对他所属的方法加锁,以防止其他线程的访问,运行结束后解锁。

native:本地修饰符。指定此方法的方法体是用其他语言在程序外部编写的。

初始化块(static)

static:使用static修饰的初始化块被称为静态代码块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值