java必知必会--面向对象及相关基础知识

java必知必会–面向对象及相关基础知识

一、java面向对象:

什么是面向对象以及三大特性

  1. 我们把数据和数据之间的相互操作关系放到一起总结为–对象。所有的操作都是基于对象来进行的。
  2. 面向对象的的特征:封装、继承、多态
  3. 封装:我们把数据访问和数据操作部分绑定起来,提供对外的访问接口。所有的操作都经过统一的入口。我们不需关注内部怎么运行操作,只需调用即可,同时也保证其安全性。
  4. 继承:继承就是从新的类中(父类、基类)得到继承信息来创建新的类(子类、派生类)的过程。使得程序之间可以有一定的延续性。可以达到代码简化,易于编写维护,调理也更加的清晰。
  5. 多态:同样的对象引用在调用同样的方法时可以做不同的事情。方法的重载(overload)是编译时多态也称之为前绑定,方法的重写是运行时多态也称之为后绑定。

面向对象五大原则

  1. 单一职责:各司其职–提升效率
  2. 开闭原则:一个模块在拓展性能方面是开放的,在更改性能方面是封闭的。你可以去拓展但不可以去改变之前的东西。
  3. 替换原则:子类可以替换父类出现在任何父类出现的地方。
  4. 依赖原则:A-B组件之间有依赖时必须先实现A才能进行。
  5. 接口分离原则:模块之间要通过接口来进行隔离,而不是通过类进行强耦合。(高内聚、低耦合)

方法重写和重载的区别

  1. 重载:

     重载的方法名一致,参数中的个数、类型、顺序不同
     重载与方法返回值无关,存在与父类,子类和同类中
     重载可以有不同的修饰符和异常抛出
    
  2. 重写:

     重写的参数列表,返回值必须一致
     构造方法不能重写,final方法不能重写,static方法不能重写
     访问权限不能比父类更低
     不能抛出比父类更多的异常
    

类变量、成员变量和局部变量

  1. 类变量是归属类的变量,是用来定义类的属性,有static修饰也称之为静态变量,可以通过类名.变量名来获取。
  2. 成员变量归属与类的示例变量,没有用static来修饰。存在与类之内和方法之外。只能通过类对象.变量名来获取
  3. 局部变量是在方法体中定义的变量,其作用域是类的开始和结束。

java基本数据类型

    bate(字节)、int(整型)、long(长整型)、short(短整型)、bool(布尔)、double(双精度)、float(浮点型)、char(字符)

自动拆装箱

    javase5推出了自动拆装箱,
    Integer i= 10;   --这是装箱,自动根据数值来创建对象;
    int j = i;        --这是拆箱,自动将包装类转换为基本数据类型;

String

        详见 http://guangmuhua.com/articleDetail/52

集合

        详见  http://guangmuhua.com/articleDetail/161

抽象类(abstract class)和接口(interface)区别

  1. 抽象类(为继承而定义的,只定义了方法,没有具体实现)

             可以定义构造器、可以有抽象方法和具体方法、抽象类中的接口都是public类型的、抽象类中可以定义成员变量、抽象类中可以包含静态方法、有抽象方                        法时必须声明为抽象类,而抽象类未必有抽象方法、一个类中只能继承一个抽象类接口
    
  2. 接口 (泛指别人可以调用的方法或者函数,实现一个接口是必须实现其中的全部方法)

     接口中不能定义构造器、接口中的方法全部都是抽象方法、接口中不能有静态类、一个类可以实现多个接口
    

https://www.guangmuhua.com/articleDetail/143

你可能感兴趣的:(java,开发语言)