马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 马太效应 于 2017-7-16 23:53 编辑
今天是第十二天,希望能坚持下去
美好生活在前方
①Java变量(非常量即为变量)
<ps.发现变量类型怎么这么多...重新plus一遍>
A.特点:a.变量可以通过变量名访问;
b.变量是数据存储空间的表示;
c.变量声明后没有赋值的话 编译器会自动提示并赋予默认值;
B.声明和使用: a.声明一个变量以分配空间(根据类型开辟空间<如大小>);
b.为变量赋值
c.使用变量
C.命名规则(首字符+其余部分): a.首字符:字母、下划线、‘$’符号
b.其余部分:数字、字母、下划线、‘$’
c.避开关键字
[b](在编程语言中,标识符就是程序员自己规定的具有特定含义的词,比如类名称,属性名称,变量名等。
[/b] 1.标识符是用来给类、对象、方法、变量、接口和自定义数据类型命名的。
2.不能把java关键字和保留字作为标识符;
3.区分大小写;
4.标识符没有长度限制。)
D.类型
类变量、静态变量、实例变量、全局变量、成员变量和局部变量
1.类变量<也称为静态变量>
在java中,类变量(也叫静态变量)是类中独立于方法之外的变量,用static 修饰。(static表示“全局的”、“静态的”,用来修饰成员变量和成员方法,或静态代码块(静态代码块独立于类成员,jvm加载类时会执行静态代码块,每个代码块只执行一次,按顺序执行))。
a. 用 static 修饰,必须在方法、构造方法和语句块之外。
b.每个类只有一个类变量,不管这个类有多少个对象。
c.静态变量除了被声明为常量外很少使用。(静态变量存储在静态内存中)
常量是指声明为public/private,final和static类型的变量。
常量初始化后不可改变。
d.静态变量随着程序的开始和结束而创建和销毁。
e.静态变量可以通过:ClassName.VariableName的方式访问。
f.默认值和实例变量相似。
g.与实例变量具有相似的可见性。但为了对类的使用者可见,大多数静态变量声明为public类型。
2.实例变量
在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。
a.实例变量声明在一个类中,但在方法、构造方法和语句块之外;
b.当一个对象被实例化之后,每个实例变量的值就跟着确定;
c.实例变量在对象创建的时候创建,在对象被销毁的时候销毁,存在于对象所在的堆内存中;
d.实例变量的值应该至少被一个方法、构造方法或者语句块引用,使得外部能够通过这些方式获取实例变量信息;
e.实例变量可以声明在使用前或者使用后;
f.访问修饰符可以修饰实例变量;
g.实例变量对于类中的方法、构造方法或者语句块是可见的。
一般情况下应该把实例变量设为私有。
通过使用访问修饰符可以使实例变量对子类可见;
h.实例变量具有默认值。变量的值可以在声明时指定,也可以在构造方法中指定;
i.实例变量可以直接通过变量名访问。但在静态方法以及其他类中,就应该使用完全限定名:ObejectReference.VariableName。
3.局部变量(局部变量是相对于全局变量而言的)<本地变量>
a.局部变量声明在方法、构造方法或者语句块中;
b.局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完成后,变量将会被销毁;
访问修饰符不能用于局部变量;
c.局部变量只在声明它的方法、构造方法或者语句块中可见;
d.局部变量是在栈上分配的。
e.局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。
4.全局变量和局部变量的差别
a.在子程序中定义的变量称为局部变量,在程序的一开始定义的变量称为全局变量。
b.全局变量作用域是整个程序,局部变量作用域是定义该变量的子程序。
c.当全局变量与局部变量同名时:在定义局部变量的子程序内,局部变量起作用;在其它地方全局变量起作用。
public class Day {
static int a = 0;// 类(静态)变量
String str = "hello fishc";// 实例变量
public void method() {
int b = 1;// 局部变量
}
}
②this关键字
A.特点:
a.在类中的方法中使用的this关键字代表的是调用此方法的对象的引用
b.this可以看作是一个变量,它的值是当前对象的引用
c.使用this可以处理方法中的成员变量和形参同名的问题
d.当在方法内需要用到调用该方法时,就可以用this
e.在类的构造方法中可以调用this([参数列表])来调用该类的指定构造方法
ps.以上若有错误,欢迎指正,感谢~
|