JAVA 关键字

abstract

1.abstract 是关键字,他说明他可以用来修饰类型和方法,他指这个类型或者方法是抽象的,是不知道里面如何实现的,也不用知道是如何实现的。
2.抽象类被abstract 修饰的类型,是具有承载抽象方法能力的类型。
3.抽象方法:只知道方法的特征(方法名,返回值类型,参数列表),但不知道方法具体应该怎么实现的方法,叫做抽象方法,应该使用abstract修饰。
4.抽象方法必须在抽象类中,但抽象类中不一定有抽象方法;
5.抽象方法不能有方法体,就是不能有{}。
6.抽象类存在的意义就是为了让别人继承,抽象方法的存在就是为了让别人重写。
7.抽象类不能创建对象,就算抽象类中没有抽象方法,也不能创建对象,但可以有构造方法。

final (不能改值,类不能继承,不能重写)

1.final可以修饰属性 ,方法和类
2.final 修饰属性,该属性不能被修改(重新指定内存位置),必须直接赋值或者用构造方法直接赋值,而且不能用 = ,++,-- 号重新赋值改变了;被final修饰的属性叫常量。(public final int a =4;),final 修饰属性,如果用构造参数赋值,必须每次都赋值。
3.final 修饰的方法不能被重写,但可以继承,可以重载。
4.final 修饰的类不能被继承。
举例:
final修饰容器,容器不能再修改,但容器中的内容可以更改;
final修饰对象,对象不能再修改,但对象中的内容可以更改。

static

1.static 叫做静态,可以修饰属性 ,方法,类(?内部类),代码块。
修饰属性:
1.static 修饰属性,叫做静态属性,也叫类变量,也叫全局变量。(区分成员变量,实例变量:成员变量就是实例变量 )
2.类变量的调用规则:可以使用对象进行调用,也可以使用类名直接调用,实例变量只能用对象调用
3.类变量全局只有一个,大家用的都是同一个
4.类变量 可以继承

修饰方法:
1.static修饰方法叫静态方法
2.静态方法可以用 对象进行调用,也可以使用类名直接调用(类名.方法;如 Test.hahah() )
3.静态方法 有人不叫继承,叫包含,会完整继承父类的静态方法,按照就近原则,不能重写。

修饰类:
一般的类不可以用static修饰,但可以修饰 内部类。可以修饰内部类,直接调用;如果不用static修饰,必须创建对象在调用,如:Man 是Person的内部类,Man p = new Person().new Man();。内部类要用外面那个类中的私有属性和私有方法时,内部类不能加static修饰,不然调用不了,但是能调用外面类中的static,静态属性,方法。
动态和静态的调用关系:
动态一定可以调用静态,静态不能调用动态,因为有了对象才能调用。

修饰代码块:
格式:static{ }
1.静态代码块加载即运行。
2.不用这个类不会加载,用到这个类,静态方法会直接加载出来。
3.用这个类知识声明 Mon();不会加载。
4.继承关系,子类创建对象,父类的静态代码块会执行。
5.执行顺序:先父类静态代码块–子类静态代码块—父类构造方法----子类构造方法
6.第二次创建子类对象,因为静态代码块只执行一次,只输出 父类构造方法----子类构造方法。
7.子类只调用父类成员变量,只加载父类静态代码块,子类调用子类成员变量,加载父类静态代码块,和子类的静态代码块。

接口(interface)

接口中的方法大家都有,但实现的方法都不一样。
接口创建的属性都是 public static final 的;
接口创建的方法都是抽象方法,不具有承载普通方法的能力。
default可以实例化,就可以有方法体了。
接口不是类,没有构造方法,不能创建对象。
实现接口 implements----多实现
接口和接口之间实现多继承,类和类之间只支持单继承,类和接口之间是实现的关系。

附带思维导图:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值