马太效应 发表于 2017-7-16 23:53:27

Java暑期学习Day12

本帖最后由 马太效应 于 2017-7-16 23:53 编辑

今天是第十二天,希望能坚持下去
美好生活在前方{:10_298:}

static/image/hrline/2.gif



①Java变量(非常量即为变量)
<ps.发现变量类型怎么这么多...重新plus一遍>

   A.特点:a.变量可以通过变量名访问;
               b.变量是数据存储空间的表示;
               c.变量声明后没有赋值的话 编译器会自动提示并赋予默认值;

   B.声明和使用: a.声明一个变量以分配空间(根据类型开辟空间<如大小>);
                         b.为变量赋值
                         c.使用变量

   C.命名规则(首字符+其余部分):a.首字符:字母、下划线、‘$’符号
                                                      b.其余部分:数字、字母、下划线、‘$’
                                                      c.避开关键字


(在编程语言中,标识符就是程序员自己规定的具有特定含义的词,比如类名称,属性名称,变量名等。
   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;// 局部变量
        }
}


static/image/hrline/2.gif

②this关键字

A.特点:
               a.在类中的方法中使用的this关键字代表的是调用此方法的对象的引用
               b.this可以看作是一个变量,它的值是当前对象的引用
               c.使用this可以处理方法中的成员变量和形参同名的问题
               d.当在方法内需要用到调用该方法时,就可以用this
               e.在类的构造方法中可以调用this([参数列表])来调用该类的指定构造方法


static/image/hrline/5.gif


ps.以上若有错误,欢迎指正,感谢~






页: [1]
查看完整版本: Java暑期学习Day12