Java修饰符abstract,static,final的区别

注意:有抽象方法的类一定是抽象类。但是抽象类中不一定都是抽象方法,也可以全是具体方法。
abstract修饰符在修饰类时必须放在类名前。

abstract修饰方法就是要求其子类覆盖(实现)这个方法。调用时可以以多态方式调用子类覆盖(实现)后的方法,也就是说抽象方法必须在其子类中实现,除非子类本身也是抽象类。

注意:父类是抽象类,其中有抽象方法,那么子类继承父类,并把父类中的所有抽象方法都实现(覆盖)了,子类才有创建对象的实例的能力,否则子类也必须是抽象类。抽象类中可以有构造方法,是子类在构造子类对象时需要调用的父类(抽象类)的构造方法。

final和abstract,private和abstract,static和abstract,这些是不能放在一起的修饰符,因为
abstract修饰的方法是必须在其子类中实现(覆盖),才能以多态方式调用,以上修饰符在修饰方法时期子类都覆盖不了这个方法,final是不可以覆
盖,private是不能够继承到子类,所以也就不能覆盖,static是可以覆盖的,但是在调用时会调用编译时类型的方法,因为调用的是父类的方法,而
父类的方法又是抽象的方法,又不能够调用,所以上的修饰符不能放在一起。

抽象(abstract)方法代表了某种标准,定义标准,定义功能,在子类中去实现功能(子类继承了父类并需要给出从父类继承的抽象方法的实现)。
方法一时间想不到怎么被实现,或有意要子类去实现而定义某种标准,这个方法可以被定义为抽象。(abstract)

模板方法模式
用abstract把制订标准和实现标准分开,制定的标准就是模板,实现就是按模板标准来
实现,也就是继承模板,实现模板中相应功能的方法。模板中不允许修改的方法可以用fianl来修饰,这个方法不能使抽象方法,为保证安全,封装,把模板中
不公开的部分用protected(保护)修饰。

时间: 2024-07-31 14:26:40

Java修饰符abstract,static,final的区别的相关文章

Java修饰符 abstract,static,final 的区别详解

一:static 表示静态,它可以修饰属性,方法和代码块. 1.static修饰属性(类变量),那么这个属性就可以用类名.属性名来访问,也就是使这个属性成为本类的类变量,为本类对象所共有.这个属性就是全类公有.(共有的类变量与对象无关,只和类有关). 类加载的过程,类本身也是保存在文件中(字节码文件保存着类的信息)的,java会通过I/O流把类的文件(字节码文件)读入JVM(java虚拟机),这个过程成为类的加载.JVM(java虚拟机)会通过类路径(CLASSPATH)来找字节码文件. 类变量

java修饰符public final static abstract transient

JAVA 修饰符public final static abstract transient 关键字: public final static abstract ... 1.public protected default private 组 位置                        private      默认      protected        public 同一个类                    是            是         是         

java学习笔记(三)java中的修饰符abstract、static与final

一.四种访问级别的访问范围 访问级别 访问修饰符 同类 同包 子类 不同的包 公开 public 受保护 protected 默认 没有访问修饰符 私有的 private 二.使用abstract修饰符需要遵守的语法规则 1.抽象类中可以没有抽象方法,但是包含抽象方法的类必须定义为抽象类,即用abstract修饰: 2.抽象类跟抽象方法不能被final修饰符修饰: 3.抽象类中可以有非抽象方法,因为继承抽象类的子类必须重写父类中所有的抽象方法,因此抽象类中不能有抽象构造方法和抽象静态方法: 4.

浅析java修饰符之public default protected private static final abstract

浅析java修饰符之public default protected private static final abstract 一   修饰符的作用:用来定义类.方法或者变量,通常放在语句的最前端 二   分类(大致分两类) 1.访问修饰符,包括:public default protected private 2.非访问修饰符,包括:static final abstract 三 访问修饰符--Java中,可以使用访问控制符来保护对类.变量.方法和构造方法的访问.Java支持4种不同的访问权

java中static、final、static final的区别

final可以修饰:属性,方法,类,局部变量(方法中的变量) final修饰的属性的初始化可以在编译期,也可以在运行期,初始化后不能被改变. final修饰的属性跟具体对象有关,在运行期初始化的final属性,不同对象可以有不同的值. final修饰的属性表明是一个常数(创建后不能被修改). final修饰的方法表示该方法在子类中不能被重写,final修饰的类表示该类不能被继承. 对于基本类型数据,final会将值变为一个常数(创建后不能被修改):但是对于对象句柄(亦可称作引用或者指针),fin

Java 修饰符

Java语言提供了很多修饰符,主要分为以下两类: 访问修饰符 非访问修饰符 修饰符用来定义类.方法或者变量,通常放在语句的最前端.我们通过下面的例子来说明: public class className { // ... } private boolean myFlag; static final double weeks = 9.5; protected static final int BOXWIDTH = 42; public static void main(String[] argum

java修饰符

java修饰符主要分为两类:1.访问修饰符 2.非访问修饰符 修饰符用来定义类.方法或者变量,通常放在语句的最前端. 一:访问控制修饰符 java中使用访问控制符来保护对类.变量.方法和钩子方法的访问.有四种不同的访问权限: 默认的:default,在同一包内见,不使用任何修饰符 私有的:private,在同一类内可见 共有的:public,对所有类可见 受保护的:protected,对同一包内的类和所有子类可见 访问控制和继承规则: 父类中声明为public的方法在子类中也必须为public.

Java修饰符类型(public、protected、private)小结

Java修饰符号类型: public:Java语言中访问限制最宽的修饰符,一般称之为“公共的”.被其修饰的类.属性以及方法不仅可以跨类访问,而且允许跨包(package)访问. private:Java语言中对访问权限限制的最窄的修饰符,一般称之为“私有的”.被其修饰的类.属性以及方法只能被该类的对象访问,其子类不能访问,更不能允许跨包访问. protected:介于public 和 private 之间的一种访问修饰符,一般称之为“保护形”.被其修饰的类.属性以及方法只能被类本身的方法及子类访

Java学习(八):Java修饰符(类、变量、方法)

java中的修饰符分为类修饰符,变量修饰符,方法修饰符. 类修饰符: 1.public : public 即公共类. 2.package : 默认缺省为包修饰符,本包可见. 3.abstract :凡是用 abstract 修饰符修饰的类,被称为抽象类.含有一个或者多个抽象方法的类必须声明为抽象类,抽象类无法实例化. 4.final :当一个类不可能有子类时可用修饰符 final 把它说明为最终类. 变量修饰符: 1.public :用 public 修饰的变量可以被所有其它类所引用. 2.pr