java从零到大牛学习路程

面向对象学习第二天知识点总结

2018-07-10  本文已影响5人  BSimmons

一.单利模式

恶汉式

创建过程:

        将构造方法私有化

        创建一个static修饰的对象 给静态方法调用

        创建一个static修饰的获取唯一一个对象的方法

class Singlton{

    prvate static Singlton s = new Singlton();

    prvate Singlton(){}

    public static Singlton getInstance(){

            return s;

    }

 }

懒汉式:

创建过程:

        将构造方法私有化

        创建一个static修饰的对象 给静态方法调用

        创建一个static修饰的获取唯一一个对象的方法

class Singlton{

    prvate static Singlton s = null;

    private Singlton(){}

    public static Singlton getInstance(){

        if(s == null){

            return new Singlton();

        }

            return s;

    }

 }

二 .static

    1.static 修饰的变量和方法 变成了静态变量和静态方法

    2.静态变量和方法随着类的创建而创建 随着类的销毁而销毁 先与对象的存在 被所用的对象共享

    3.静态变量和方法可以用类名调用也可以用对象调用  推荐类名调用

    4.static修饰的方法只能调用外部static修饰的变量或者方法 想调用不是static修饰的变量或者方法必须创建对象

三.代码块

    1.静态代码块:  static{ } 随着类的创建只被创建一次

    2.构造代码块 :{}  每次创建对象都会被调用一次

    3.局部代码块: 定义在方法中的一对{}       执行结束后立即释放资源

    静态代码块 优先于 构造代码块 优先于 构造方法

四.继承的格式:

格式: 修饰符 子类名 extends 父类名{}

        1.java中的继承只支持单继承 不支持多继承 但支持多层继承

        2. 不能继承父类的私有成员

        3.如果一个类没有继承 默认继承object类

五.继承中成员的查找优先级

        成员变量:现在子类中查找 再去父类中查找 找不到报错

        构造方法:子类的构造方法默认先执行父类的无参构造方法,如果父类中没有无参数的构造方法必须执行其他的构造方法

      this(....) 调用本类的构造方法  super(....)调用父类的构造方法

     且只能放在可执行代码的第一行执行

        成员方法:先在子类中查找 再去父类中查找 找不早报错

六.方法的重载和重写

    重载:一个类中可以存在多个名字相同的方法 但要保证参数的个数或者参数的类型不同 与返回值无关

    重写:在存在继承关系的两个类中,子类中可以存在和父类一模一样的方法

重写的注意事项:

    1.父类的私有方法子类不可以重写 

    2.子类重写父类放的访问权限不能更低

    3.父类static修饰的方法。子类也必修用static修饰

七.final关键字

    1.final修饰类不能被继承 

    2.final修饰的方法不能被重写

    3.final修饰的变量为常量。

    final修饰的成员变量需要在对象创建完成之前赋值  初始化赋值 构造代码块赋值 构造方法赋值

    final修饰的基本数据类型 值不能改变

    final修饰的引用数据类型 地址值不能改变 但是 可以修改里面的属性

上一篇下一篇

猜你喜欢

热点阅读