Java进阶(类与对象的深入讨论)

来源:互联网 发布:平板电脑windows推荐 编辑:程序博客网 时间:2024/06/01 09:12
    万物皆对象。Java是纯面向对象的编程语言,更多的跟人的思维有点相似,在人的眼里每一个事物都是一个对象。
    对象是Java里面的核心,对象可以说是静态属性和动态属性的封装体,静态属性又可称成员变量或字段,动态属性可称方法。
    类是用来创建同一类型的对象的模板,在一个类里定义了该创建的对象应该具有的成员变量及方法。
    
    Java中类的定义:[修饰符] class 类名{}
    Java中类的成员变量及方法的定义↓
    成员变量:[修饰符] [final] [static] 数据类型 变量名
    方法:[修饰符] [static] 返回值类型 方法名(参数列表){}
    关于修饰符、final、static后面再谈;

    写在方法里面的变量叫局部变量,写在类里但是方法外的变量叫成员变量,成员变量声明后不赋初值也能直接使用(默认值),而局部变量声明完不赋初值就使用就会报错。

    引用类型:Java语言内除了所有的基本数据类型之外全部都是引用类型,Java封装了繁琐的指针。引用类型占两块内存。
    ①String s; 声明一个String类型的引用变量s,但它没有指向任何对象,即使声明出来也没办法用;
    ②要s = new String("Hello,world!");这样才能用;
    第①的过程的时候,s只占一块内存,存放着null,因为它还没有被引用到具体的对象中;
    第②的过程时,s就多占了一块内存,两块内存中一块内存存放该字符串的地址,另一块内存(一般在堆中)存放字符串,跟C语言中的指针类似,实际上Java只是把指针封装起来且换了个名字叫“引用”。
    
    对象的创建及使用:
    必须使用new关键字以该类作为数据类型创建一个对象,例如String s = new String("Hello,world!"); 这个s只是一个数据类型为String的引用变量,它没有指向任何对象;
    使用方法与成员变量前,必须先new出该对象,用“对象名.方法‘”"对象名.成员变量"使用该对象的方法及成员变量;
    同一个类new出来的对象使用的成员变量存储的内存是不一样的,也就说相对独立的,而方法却是共享使用的;
    
    构造方法:
    面向对象里面有一个特殊的方法叫构造方法,创建对象时可以通过构造方法对类里的成员变量进行动态赋值;
    
    Student类里面有一个方法名与类名相同,这个就是构造方法,构造方法不能有返回值,有了构造方法我们在new出某一个对象的时候就可以对其进行动态赋值;
    如上图写完这种构造方法后,我们在new一个对象出来的时候就不能写成Student s2 = new Student();
    这种new出对象然后括号为空的是默认情况下才可以用的,什么是默认情况下?就是当程序没有写任何构造方法的时候,如果你想要实现这个构造方法就必须自己写;
    
    这样写我们就可以直接Student s2 = new Student();
    还可以倒顺序的Student s3 = new Student("云都小生",2);
    这涉及一个新知识点叫构造方法的重载,也就是一个类里面可以拥有多个构造方法,但前提是构造方法的名字必须与类同名;
    除了构造方法的重载外,其他的方法也可以构成重载;
    方法的重载是指一个类中可以定义有相同的名字,但参数不同的多个方法。调用时根据不同的参数表选择对应的方法;

    补充:Java命名规则:类名全部用大写,而方法名和变量名都用小写,这是使用Java编程的程序员都遵守的一种习惯;
0 0
原创粉丝点击