类的构成有以下部分构成: 代码段 动态代码段 静态代码
成员变量 静态变量 局部变量 常量 成员方法 静态方法 构造方法 this(对象) super(对象)下面对类里面的东西进行一一分析,可以更清晰的理解java类的构成代码段:
一个完整的大括号就是一个代码段,就代表了一段独立的内存空间,空的也是个代码动态代码段: 1、就是没有任何修饰的一对大括号{} 2、也就是写记录日志,还就是性能测试静态代码段: 1、用static修饰的一对大括号static{},是在类加载阶段就运行的代码段 2、写日志用,用于记录类被调用的时间的数据成员变量: 1、每个对象中的值都是不一样,但是也可以一样 2、保存的位置:堆内存,堆内存的大小是动态分配 3、赋值时间:一般情况下在实例化之前是空值,没有赋值的 在实例化的时候赋值,调用对应的构造方法对成员变量赋值,也可以不赋值,编译器会给默认值。通过调用成员变量进行赋值也可以 和局部变量的区别:局部变量必须声明就赋值,要不然会报错。 也是引用数据类型中,多态发生的时候 4、关联关系:成员变量的值是另外一个类对象的引用 5、调用:对象名.成员变量名。类名不可以调用成员变量,静态上下中不可以调用非静态属性静态变量: 1、是属于类级别的,每个对象中的都一样 2、保存位置是静态数据区 3、最好在声明的时候就赋值 4、调用:类名.静态变量名局部变量: 1、在方法中生命的变量是局部变量,并且生命的时候,就必须赋值 2、局部变量优先级大于成员变量的优先级 3、方法的形参列表也是局部变量 4、局部变量和循环体重的变量不可以重名 5、依赖关系:局部变量的值是另外一个类对象的引用常量: 1、声明:public static final 数据类型 大写_ = 值; 2、在整个软件生命周期中,值不会改变 3、在接口中,psf可以省略 4、调用:类名.常量名成员方法: 1、没有static修饰的方法叫成员方法 2、调用:对象名.成员方法名(实参列表); 3、多态:方法生命的时候,形参列表中是父类或是借口 调用的时候,传的是子类对象的引用静态方法: 1、用static修饰的方法 2、调用:类名.静态方法名(实参列表); 3、保存在静态代码区中 4、不能再静态方法中调用非静态的成员属性构造方法: 1、用于在类实例化中,创建当前类对象的方法(实例化当前类对象) 2、默认是:公共的,静态的,没有返回值的,名字和类名一样的 3、在实例化中,一般用于实例化成员变量 4、注意: 单例模式中的使用 构造的重载,对不同的成员变量进行赋值 不可以被继承复写,但是可以被调用,super() 接口中没有构造方法,因为接口就是用类实现的,不需要构造方法,接口不能被实例化 抽象类中有构造方法,用于子类实例化父类对象super()this(对象): 1 给成员变量加前缀,然后复制 2 用在构造方法中,重载调用本类中别的构造方法,this()重载调用的时候,必须写在构造方法的第一行 3 用于表示本类的对象,里面保存了本类的地址,this位于堆内存中第一个内存片中 4 在堆内存中,我们有堆内存中第一个内存片的内存地址作为整个对象的内存地址,并且命名为thissuper(对象): 1 super代表的是当前子类对象中的父类型特征 2 在子类的构造方法重载调用父类别的构造方法的时候,必须写在第一行 3 super()和this()不能重复出现 4 super可以用来调用父类的成员属性和成员方法在上面的说明中,有两个字出现的频率很高:调用。其实类最主要的作用就是:代码复用类对象之间的6中关系: 1 继承 2 实现 3 依赖:局部变量是另外一个类对象的引用 4 关联:成员变量是另外一个类对象的引用 5 聚合:类中的集合中的元素是另外一个类对象的引用 6 组合
新闻热点
疑难解答