搜索
写经验 领红包

java面向对象的程序设计(java如何实现面向对象的设计)

导语:Java面向对象程序设计之Static、代码块、final

java面向对象的程序设计(java如何实现面向对象的设计)

一、static关键字

1、static关键字的作:

l static是静态的意思,可以修饰成员变量和成员方法。

l static修饰成员变量表示该成员变量只在内存中只存储一份,可以被共享访问、修改。

2、成员变量的分类:

静态成员变量(有static修饰,属于类、加载一次,可以被共享访问),访问格式

实例成员变量(无static修饰,属于对象),访问格式:

3、成员方法的分类:

静态成员方法(有static修饰,属于类),建议用类名访问,也可以用对象访问。

实例成员方法(无static修饰,属于对象),只能用对象触发访问。

二、代码块

1、代码块概述

代码块是类的5大成分之一(成员变量、构造器,方法,代码块,内部类),定义在类中方法外。

在Java类下,使用 { } 括起来的代码被称为代码块 。

2、代码块分为

2、1静态代码块:

格式:static{}

特点:需要通过static关键字修饰,随着类的加载而加载,并且自动触发、只执行一次

使用场景:在类加载的时候做一些静态数据初始化的操作,以便后续使用。

2、2构造代码块(了解,用的少):

格式:{}

特点:每次创建对象,调用构造器执行时,都会执行该代码块中的代码,并且在构造器执行前执行

使用场景:初始化实例资源。

三、final关键字

1、final的作用

final 关键字是最终的意思,可以修饰(方法,变量,类)

修饰方法:表明该方法是最终方法,不能被重写。

修饰变量:表示该变量第一次赋值后,不能再次被赋值(有且仅能被赋值一次)。

修饰类:表明该类是最终类,不能被继承。

2、final修饰类final类不能被继承,因此final类的成员方法没有机会被覆盖,默认都是final的。在设计类时候,如果这个类不需要有子类,类的实现细节不允许改变,并且确信这个类不会载被扩展,那么就设计为final类。

3、 final修饰方法如果一个类不允许其子类覆盖某个方法(即不允许被子类重写),则可以把这个方法声明为final方法。把方法锁定,防止任何继承类修改它的意义和实现。

4、final修饰变量(常量)用final修饰的成员变量表示常量,值一旦给定就无法改变!final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。一旦给final变量初值后,值就不能再改变了。另外,final变量定义的时候,可以先声明,而不给初值,这中变量也称为final空白,无论什么情况,编译器都确保空白final在使用之前必须被初始化。但是,final空白在final关键字final的使用上提供了更大的灵活性,为此,一个类中的final数据成员就可以实现依对象而有所不同,却有保持其恒定不变的特征。

5、常量

常量是使用了public static final修饰的成员变量,必须有初始化值,而且执行的过程中其值不能被改变。

本文内容由小涵整理编辑!