面向对象

来源:互联网 发布:有哪些网络调查网站 编辑:程序博客网 时间:2024/06/07 23:25
面向对象
1、面向对象:程序员是指挥者(让别人帮你做)
2、面向过程:程序员是执行者(亲力亲为)
3、class与对象:对象是具体的,class是抽象的
               由特殊到一般,由一般到特殊(class--对象)
4、创建对象的语法:类型 对象名=new 类型();
                   对象名.属性
                   对象名.方法
5、构造方法:方法名与类名一致;没有返回值;对于一个对象而言构造方法调用一次;构造方法初始化对象数据的
6、对象创建:在堆内存中分配空间
             给堆内存空间填充对象
             栈变量引用堆内存地址
7、对象初始化步骤:默认初始化
                   显示初始化
                   构造代码块初始化
                   构造方法初始化
8、this:this.name=name; 
         this.getName();相当于getName();
         this();调用本类自己的构造方法
         super();调用父类的构造方法
this和super在构造方法中只能有一个出现在第一行,但是最后肯定会调用父类的构造方法,因为要初始化数据。
9、static:static修饰成员变量属于类变量,随着类的加载而加载
           static修饰方法是类方法,调用:类名.方法名();。也可以通过对象.方法名(不推荐),随着类的加载而加载
           static{}静态代码块,随着类的加载而执行
10、static代码块和构造代码块区别:
    static代码块随着类的加载而执行,只执行一次
    构造代码块每次new对象都执行
11、静态和非静态:
静态方法:只能访问静态方法和静态成员变量(类变量)
成员方法:可以访问静态方法和静态属性
static的类变量在内存只有一份
静态方法、静态成员变量存在方法区
12、单例模式:
懒汉式:方法调用的时候才创建对象
饿汉式:类的加载而创建对象
构造方法私有化
13、main方法是静态方法,所以不能出现this,super
原创粉丝点击