博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA 01
阅读量:5080 次
发布时间:2019-06-12

本文共 1747 字,大约阅读时间需要 5 分钟。

static: 静态变量 和静态方法 可直接通过类名调用,一个类共用一个静态变量。

    静态方法不能调用非静态变量,静态方法。

    非静态方法可以调用静态变量、静态方法。

--------------------------------------------------------------------------------------------------

instanceof:   

    void test(Animal animal)

    {

      if(animal instanceof Tiger)

        ......

    }

--------------------------------------------------------------------------------------------------

final: final申明的类没有子类,申明的方法不能被子类继承,申明的变量值不能被改变!

final class ClassName extends SuperClassName{

  final int i;

  final void tt(){}// final可以省略不写

}

--------------------------------------------------------------------------------------------------

abstract:  抽象类不能实例化,但可以有变量。如 对:ClassName cn;  错: ClassName cn = new ClassName() 

修饰符 abstract ClassName{

    void abstractMethod();  //要在子类中实现

}

--------------------------------------------------------------------------------------------------

interface: 接口中的变量默认添加 public static final 修饰符,可省略不写。方法是public的!抽象类可以不实现interface,但是,子类必须全部实现。

接口的作用已是创建常量组,比如星期。

public/protected interface InterfaceName{

  int i = 5;// 等同于public static final int i  = 5;

  返回值类型 methodName(par); //等同于public 返回值类型 methodName(par);

}

class ClassName implements InterfaceName, InterfaceName2,...

{}

接口可以继承, public/protected interface IterfaceName extends InterfaceName2{}

接口不能实例化,但可以申明变量。 错:InterfaceName in = new InterfaceName(); 对:InterfaceName in = new ClassName();//这个ClassName必须实现这个接口。

 

接口和抽象类是非常相像的,但它们之间是有区别的,主要区别有以下几方面。

一个类可以实现众多个接口,但是只能继承一个抽象类。可以说接口是取消程序语

言中的多继承机制的一个衍生物,但它不完全如此。

抽象类可以有非抽象方法,即可以有已经实现的方法,继承它的子类可以对方法进
行覆写;而接口中定义的方法必须全部为抽象方法。
在抽象类中定义的方法,它们的修饰符可以是 public、 protected、 private,也可以是
默认值;但是在接口中定义的方法全是 public 的。
抽象类可以有构造函数,接口不能。两者都不能实例化,但是都能通过它们来存放
子类对象或是实现类的对象。可以说它们都可以实现多态。

 

转载于:https://www.cnblogs.com/supjia/p/5186408.html

你可能感兴趣的文章
数学智力题总结
查看>>
四叉树问题
查看>>
migration
查看>>
java生成UUID
查看>>
PHP魔术方法使用总结
查看>>
关闭IPv6
查看>>
权限术语解释
查看>>
YJX_Driver_015_DDK_HelloWorld卸载例程细化
查看>>
[python]decimal常用操作和需要注意的地方
查看>>
javaee 架构师之路
查看>>
js上传控件 plupload 使用记录
查看>>
java 处理高精度计算
查看>>
golang初学之接口---image
查看>>
Centos6.5DRBD加载失败,系统更换yum源(国内163)
查看>>
Html.ActionLink 几种重载方式说明及例子
查看>>
java.lang.ClassCastException: com.sun.proxy.$Proxy* cannot be cast to***
查看>>
防火墙的主要性能指标
查看>>
mongodb集群故障转移实践
查看>>
hdu 2836
查看>>
Tomcat6添加MySQL的JNDI数据源
查看>>