类的组成部分

来源:互联网 发布:s7edge怎么关闭4g网络 编辑:程序博客网 时间:2024/06/02 12:20

  了解类的组成首先要先知道在java中类是如何定义的:
格式:

[访问修饰符] class [类名]{    //类体    成员变量;    成员方法;//也就是我们平常说的行为。}

  下面我们将逐步就行讲解类的组成部分!

一, 成员变量

声明格式:

    [修饰符] <变量类型> [变量名] (= 初始值);

  成员变量的定义是定义该类所有对象都具备的属性,成员变量也有人称为全局变量,它跟C语言中的全局变量差不多是一个意思。他的作用域是整个类;作用时间是同对象有相同的生命周期;进行声明时可以不用进行初始化,这是它与局部变量的不同点。

二, 成员方法

定义格式:

[修饰符] <返回值类型> [方法名](<参数类型> 参数列表,……){    //方法体。    局部变量;    方法语句;}

局部变量

  局部变量的声明同成员变量的声明是相同的,唯一的不同点是局部变量声明后必须赋初值。局部变量的作用域:声明局部变量的方法内,方法调用结束后变量自动从内存中清除;局部变量的声明生命周期是与随方法的调用而加载,随方法的结束而消失。

三, 构造方法

  构造方法是什么?我对构造方法的理解就是在对象进行创建时调用该类并进行初始化的结构。
  对类进行实例化,也就是创建对象的过程是:

//Student类public class Student {    /*     * 定义学生构造器     */    //该构造器为默认构造器,当创建一个类是默认会有一个隐式的无参构造器。    Student(){    }    //该构造器为自定义有参构造器。    Student(String name, int age){        this.name = name;        this.age = age;    }    /*     * 定义学生属性     */    String name;    //学生姓名    int age;        //学生年龄    /*     * 定义学生行为     */    void study(){        System.out.println("学生学习!");    }}//Test测试类public class Test {    public static void main(String[] args) {        //调用无参构造器,创建张三学生对象。        Student zhangsan = new Student();        //调用无参构造器,创建李四学生对象,并初始化姓名和年龄。        Student lisi = new Student("lisi", 19);    }}

四, 修饰符

1. 访问修饰符

  java中的访问修饰符有四种分别为:
public, protected, default(默认情况), private。
  访问修饰符的访问范围如下:
public :
   可以访问被本类,同包,异包子类,异包非子类以及其他的访问。
protected:
   可以被本类,同包, 异包子类访问。
default:
  默认状态下的访问修饰符,修饰权限为可以被本类,同包访问。
private:
  只可以被本类使用。

       public    protected  default     private

本类     可以      可以    可以    可以
同包     可以      可以    可以    不可以
异包(子类) 可以      可以    不可以   不可以
异包(非子类)可以      不可以   不可以   不可以
其他     可以      不可以   不可以   不可以

2. 其他修饰符

  其他修饰符有static final以及synchronized。
static:
  静态修饰符。
  修饰的属性为类变量,类变量属于类而不属于对象,类变量随着类的加载而加载,随类的消失而消失。生命周期同类相同。类变量的调用通过类名来调用,格式:类名.类变量;
  修饰的方法(行为)为类方法,同类变量一样是类的方法,而不是对象的方法,生命周期同类相同。类方法的调用通过类名来调用,格式:类名.类方法();
final
  最终修饰符。
  修饰的类为最终类,不允许被继承。
  修饰的方法不允许被复写。
  修饰的变量叫做常量,不允许被修改。
  
  一般情况下常量定义的修饰符包括static final。
synchronized
  同步修饰符。
  一般用于线程。修饰的方法在线程调用中,在同一时间只可以有一个线程访问。
  
  

0 0
原创粉丝点击