现在的位置: 首页 > 操作系统 > 正文

Java抽象、接口和final

2020年02月12日 操作系统 ⁄ 共 1341字 ⁄ 字号 评论关闭
文章目录

抽象

一、抽象类:不知道是具体什么东西的类。 abstract class 类名

1.抽象类不能直接new出来。

2.抽象类可以没有抽象方法。

public abstract class USB { //抽象类 //两个抽象方法,抽象类中也可以不写抽象方法 public abstract void qidong(); public abstract void tingzhi();//抽象方法不用写{}}

3.抽象类中,可以有抽象方法,也可以有非抽象方法。抽象类中还可以有成员变量。

4.派生类中,可以不实现某些抽象方法,但派生类必须要声明为抽象类。

public abstract class Shubiao extends USB{ public void qidong(){ System.out.println("鼠标运行"); } //父类的tingzhi()的方法没重写 ,子类也要改成abstract抽象的。}

二、抽象方法:不知道具体是干什么事情的方法。abstract 返回类型 函数名(形参);

1.抽象方法没有函数体。

2.有抽象方法的类必须是抽象类。

遇到抽象类,两种用法:

1.找找有没有它的派生类,用它的派生类。

2.自己写一个类,派生自这个抽象类。

package com.itnba.may.Demo1229;public abstract class USB { //抽象类 //两个抽象方法 public abstract void qidong(); public abstract void tingzhi();}

接口

可以理解为一种特殊的抽象类。里面只有常量和抽象方法(不需要写abstract)。

接口可以多实现(继承),抽象类只能是单位继承。

定义:

interface 接口名 [extends 父接口列表]{  final 类型 常量名=值;  public void 方法名(形参);}

public interface USB { //定义一个接口 public void qidong(); public void tingzhi();}

接口的实现:

[abstract] class 类名 extends 父类 implements 接口名,接口名,....{

public class Shubiao implements USB{ @Override public void qidong(){ System.out.println("鼠标运行"); } @Override public void tingzhi() { System.out.println("鼠标拔出了"); } //如果有接口的方法没重写 ,类要改成abstract抽象的。}

接口定义的时候:

1.接口尽量的小,功能太复杂的。——接口分离原则。

2.接口定义的时候,接口名子,尽量是形容词,或者是描述性质的词。

final 的几种修饰用法

final可以修饰成员变量,成员方法,类。

1.final修饰类:此类不能被继承。

2.final修饰成员变量:可以当常量来用。

3.final修饰方法:不能被子类的方法覆盖(重写),但可以被继承。

本文永久更新链接地址:http://www.xuebuyuan.com/Linux/2017-01/139102.htm

以上就上有关Java抽象、接口和final的全部内容,学步园全面介绍编程技术、操作系统、数据库、web前端技术等内容。

抱歉!评论已关闭.