• Java 面向对象


    Java 面向对象

    1、简介

    理解:物以类聚,把一个类,当做一个对象,而不仅仅是一些变量方法,杂乱无章。

    本质:以类的方式组织代码,以对象的组织数据。

    2、创建类

    public class Person{
    }
    

    3、创建对象

    对象类型 对象名 = 值
    Person person = new Person();
    

    new 关键字

    分配内存空间,创建对象,初始化参数,调用构造器等

    4、构造方法

    public Person(){}
    
    • 与类名字相同

    • 没有返回值,也不能写void

    5、三大特性

    5.1、封装

    数据隐藏,用盒子装起来,留一个小口,接口

    高内聚,低耦合

    高内聚:类的内部数据操作细节自己完成,不允许外部干涉。

    低耦合:暴露少量方法给外部使用

    5.2、继承

    理解:儿子继承父亲,并且能拓展,减少代码重复

    关键字 : extends,“扩展”

    5.2.1、super this

    • this(),本身构造器

    • super(),父类构造器

    两者不能同时调用,因为都必须在第一行,遵循构造器择一的原则

    5.2.2、方法重写

    • 方法名相同
    • 参数列表相同
    • 修饰符可扩大
    • 抛出异常可缩小

    5.2.3、方法重载

    • 方法名称必须相同
    • 参数列表必须不同
    • 方法的返回类型可以相同也可以不相同

    5.2.4、instanceof

    instanceof 判断父子关系,间接也可以(爷孙)

    5.3、多态

    5.3.1、什么是多态?

    现实中:不同类的对象对同一消息作出不同的响应就叫做多态。

    编程中:不同的子类重写同一个父类的同一个方法叫做多态。

    举例:上课铃响了,上体育课的去操场,上数学课的去教室。

    5.3.2、多态的分类

    编译时多态,即方法的重载,从JVM的角度来讲,这是一种静态分派(static dispatch)

    运行时多态,即方法的重写,从JVM的角度来讲,这是一种动态分派(dynamic dispatch)

    6、抽象类

    概述:生来就是被继承的,没有自己的生命

    作用:定义抽象方法,或普通方法、可以有构造器

    • 不能 new(实例化)
    • 子类必须实现抽象方法
    • 被abstract关键字修饰

    7、接口

    接口是一种规范。

    接口中有必要的方法,不能自己实现

    • interface 关键字

    • 一个类可以多个接口

    • 不能new(实例化),只能靠子类实现

    • 方法都是public

    • 必须实现接口的全部方法

    • 可以定义常量,不能定义变量,全局静态常量都有(public static final 修饰 )和 初始值

    • 不能有构造

  • 相关阅读:
    数据结构的理解
    等价、偏序和全序
    等价、偏序和全序
    二叉树与树的理解
    SICP 习题 (2.10)解题总结: 区间除法中除于零的问题
    div:给div加滚动栏 div的滚动栏设置
    textarea文本域宽度和高度(width、height)自己主动适应变化处理
    OSX: 逻辑卷管理系统Core Storage(1)
    垂死挣扎还是涅槃重生 -- Delphi XE5 公布会归来感想
    string实现
  • 原文地址:https://www.cnblogs.com/gbhh/p/13780958.html
Copyright © 2020-2023  润新知