在类中,变量根据定义的位置不同,可以分为成员变量和局部变量. 成员变量是在类体内,方法之外定义的变量,局部变量是在方法中定义的参数. 成员变量 成员变量分为类属性和实例属性,定义时没有static修饰的称为实例属性,有static修饰的称为类属性,类属性和实例属性的区别就是类属性是属于类的,它并不属于哪一个对象,它从这个类的准备阶段就一直存在,一直到这个类完全销毁.实例属性属于对象,只有某个对象被创建时,它才被创建,对象被回收,从属于该对象的实例属性也就被销毁了. 类属性的定义语法: [修饰符]
成员变量和局部变量的区别? A:在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 B:在内存中的位置不同 成员变量:在堆内存 局部变量:在栈内存 C:生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失 D:初始化值不同 成员变量:有默认初始化值 局部变量:没有默认初始化值,必须定义,赋值,然后才能使用. 注意事项: 局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则. c
/* 成员变量和局部变量. 作用范围. 成员变量作用于整个类中. 局部变量变量作用于函数中,或者语句中.//例如在for循环中 在内存中的位置: 成员变量:在堆内存中,因为对象的存在,才在内存中存在. 局部变量:存在栈内存中. */ //c.color = "blue";改变的不是类中的值,而是改变的对象中的值.就相当于给一个车图上颜色,而不是改变图纸的颜色值.
作用范围: 局部变量作用于函数中或者语句中(定义在函数或语句中(比如for语句),必须初始化) 成员变量作用于整个类中(定义在类中,有默认初始化值,可以定义显示初始化值) 在内存中的位置: 成员变量在堆内存中.因为对象的存在,才在内存中存在. 局部变量在栈内存中. 如果成员变量没有定义显示初始化,那么系统默认会初始化(在堆内存中的变量都会有默认初始化值)byte 0short 0int 0long 0Ldouble 0.0Dfloat 0.0fboolean false引用数据类型默认初始化值都
7:构造方法(掌握) (1)作用:用于对对象的数据进行初始化 (2)格式: A:方法名和类名相同 B:没有返回值类型,连void都不能有 C:没有返回值 思考题:构造方法中可不可以有return语句呢? 可以.而是我们写成这个样子就OK了:return; 其实,在任何的void类型的方法的最后你都可以写上:return; (3)构造方法的注意事项 A:如果我们没写构
一.数组 1.数组中常见的错误: 1.NullPointerExcepation : 空指针异常 原因:引用的类型变量没有指向任何的对象,在这种情况下还访问了它的属性和方法. 一个对象如果使用完了不会立马释放,只是将这个对象变为一个垃圾对象,由垃圾回收机制自己来释放.,我们没办法操作它释放. 2.ArrayIndexOutOfBoundsExcepation :数组下表越界. 二.面向对象 1.java也属于面向对象编程 : 2.面向对象的三大特征 : 封装,继承,多态.类,对象. 3.对象 :
一.面向对象的思想 面向对象特点:(1)更符合我们思想习惯的思想: (2)可以将复杂的事情简单化: (3)将我们从执行者变成了指挥者,角色发生了转换. 二.类与对象及其应用 1.事物和类的对应关系 事物 类 属性 ----------成员变量 行为 ----------成员方法 2.成员变量和成员方法 成员变量:和以前定义变量一样,存储位置放生了改变,在类中方法外 成员方法:和以前定义方法一样,只不过去掉了static. 3.类与对象
1.能够理解面向对象的思想 面向对象是基于面向过程的编程思想,强调的是对象,由对象去调用功能.它是一种更符合人类习惯的编程思想,可以将复杂的事情简单化,将我们的角色从执行者变成了指挥者. 2.能够明确类与对象关系 类是客观世界中相关事物的基本特征抽象.对象是该类事物的具体体现.比如手机是一个类,而iphone7就是一个对象. 3.定义学生类 public class Student{ //成员变量 String name; int age; //成员方法
Java变量按其作用域可分为:成员变量和局部变量.注意:在Java中是没有全局变量这个概念的 一.成员变量: 成员变量是在类中定义的变量,具体可分为类变量与实例变量--有无static修饰 实例变量的特点: 没有创建实例前是不会分配内存空间的: 从有实例开始,实例变量就存在了: 实例被销毁,实例变量就不存在了: 0~N个实例变量,程序每创建一个实例,系统就为该实例分配一块内存 类变量的特点: 从有类开始,类变量就存在了,一个JVM中类信息只要一个即可. 每个JVM最多只加载一个类一次,系统就为该