2021-01-22

Java面向对象的基础知识

学习设计模式的过程中,重新复习了有关于面向对象的知识

学习这本书中,首先需要一些基本的知识内容:

  • 对象:是一个自包含的实体,用一组可识别的特征和行为来标识。

  • 面向对象:针对对象来编程的意思

  • 类:具有相同属性和功能的对象的抽象的集合。

  • 实例化:实例就是一个真实的对象,实例化就是创建对象的过程。

  • 构造方法:又称为构造函数,就是对类进行初始化。构造方法与类同名,无返回值,也不需要void,在new对象时调用。所有的类都会有默认的构造方法,如果手动创建了构造方法,默认的构造方法就会失效。

  • 方法重载:方法重载提供了创建同名的多个方法的能力,但是这些方法需要不同的参数类型。

    • 不仅构造函数可以重载,普通方法函数也可以重载。
    • 方法重载中的两个方法必须是方法名相同,但是参数类型和个数可以不同
    • 方法重载是在不改变原来的基础上,添加新的功能
  • 属性:属性是一个方法或者一对方法,但是在调用它的代码看来,它就是一个字段,即属性适合以字段的方式使用方法调用的场合。Java中的属性,通常可以理解为get和set方法;而字段,通常叫做"类成员"。

    • 注意在java中的成员变量和属性的区别。属性是对字段的封装,以供外部访问

      class A{ private int a; private int b; public void setA(int value){  this.a = value; }  public int getA(){  return a; }}
    • 在上面的代码中可以看到a为属性,b为成员变量。属性为将方法中的get或者set去掉,如果第二字母为小写字母,则将第一个字母也变为小写字母。

    • 变量私有的叫字段,公有的叫属性

  • 继承:对象的继承代表着一种is-a的关系,如果两个对象A和B,可以描述为B是A,则表明B继承于A。继承者除了继承的特征之外,还具有自己独特的个性。继承定义了类如何相互关联、共享特性。继承的工作方式是,定义子类与父类,或者叫做派生类和基类,其中子类继承父类的全部特征,还可以定义自己的新的特性。

    • 子类继承父类非private的属性和功能

    • 子类具有自己的属性和功能,即子类可以扩展父类没有的属性和功能

    • 子类可以以自己的方式实现父类的方法,也叫做是重写。

      继承的缺点:

    • 父类变,子类不得不变。

    • 继承会破坏包装,父类实现细节暴露给子类。

    • 继承是类与类之间的强耦合关系。

  • 继承:

  • 多态:表示不同的对象可以执行相同的操作,但是需要通过它们自己的实现代码来执行。需要注意几点内容:

    • 子类以父类的身份出现
    • 子类在工作时以自己的方式实现,
    • 子类以父类的十分出现的时候,子类所特有的属性和方法不可以使用
  • 重写:子类将父类的方法转换为自己的实现方法,在Java中使用@Override表示重写。

  • 封装:每个对象都包含它能够进行操作所需要的所有信息,这个特性称之为封装。因此对象不必依赖其他对象来完成自己的操作。封装的优点有:

    • 良好的封装能够减少耦合
    • 类内部的实现可以自由的修改
    • 类具有清晰的对外接口
  • 抽象类:将实例化没有任何意义的父类改为抽象类,在Java中一般使用abstract作为修饰。抽象类需要注意几个问题:

    • 抽象类不能实例化
    • 抽象方法必须被子类重写
    • 如果类中包含抽象方法,那类必须被定义为抽象类,不能被定义为其他的方法。
  • 接口:是把隐式公共方法和属性组合起来,以封装成特定功能的一个集合。一旦类实现了接口,类就可以支持接口所指定的所有属性和成员。声明接口在语法上和抽象类是完全相同的,但是不允许提供接口中任何成员的执行方法。接口不能实例化。

  • 抽象类与接口的区别:

    • 类是对对象的抽象;抽象类是对类的抽象;接口是对行为的抽象
    • 如果行为跨越不同类的对象,可以使用接口;如果对于一些相似的类对象,可以继承抽象类。继承抽象类和实现接口是不冲突的。
    • 从设计的角度讲,抽象类是从子类中发现公共的部分,泛化出父类,然后子类继承父类。而接口是根本不知道子类的存在,方法的实现还不确定,需要预定义。
    • 接口是自顶向下设计的,抽象类是自底向上设计的。
  • 装箱:就是把值类型打包到Object引用类型的一个实例中

  • 拆箱:就是指从对象中提取值的类型。

  • 泛型:泛型是具有占位符(类型参数)的类、结构、接口和方法,这些占位符是类、结构、接口和方法所存储的一个或者多个类型的占位符。泛型集合类可以将类型参数用作它所存储的对象类型的占位符。类型参数用作为其字段的类型和其方法的参数类型出现。

  • 委托和事件:委托是对函数的封装,可以当做给方法的特征指定一个名称。而事件则是委托的一个特殊形式,当发生有意义的事情时,事件对象处理通知过程。

  • private、public、protect的可以访问的范围:

  • image-20201101155324445









原文转载:http://www.shaoqun.com/a/512572.html

跨境电商:https://www.ikjzd.com/

亚马逊应用商店:https://www.ikjzd.com/w/531

3suisses:https://www.ikjzd.com/w/412


学习设计模式的过程中,重新复习了有关于面向对象的知识学习这本书中,首先需要一些基本的知识内容:对象:是一个自包含的实体,用一组可识别的特征和行为来标识。面向对象:针对对象来编程的意思类:具有相同属性和功能的对象的抽象的集合。实例化:实例就是一个真实的对象,实例化就是创建对象的过程。构造方法:又称为构造函数,就是对类进行初始化。构造方法与类同名,无返回值,也不需要void,在new对象时调用。所有的
卖家网:卖家网
new old stock:new old stock
亚马逊邮件回复话术模板汇总:亚马逊邮件回复话术模板汇总
财富之岛_獐子岛渔民节 :财富之岛_獐子岛渔民节
方特获颁"抗击新冠疫情突出贡献奖":方特获颁"抗击新冠疫情突出贡献奖"

No comments:

Post a Comment