zoukankan      html  css  js  c++  java
  • 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 修饰 )和 初始值

    • 不能有构造

  • 相关阅读:
    ACM的算法分类 2015-04-16 14:25 22人阅读 评论(0) 收藏
    初学Larevel 2014-08-21 11:24 90人阅读 评论(0) 收藏
    初学PHP&MySQL 2014-05-31 12:40 92人阅读 评论(0) 收藏
    codeforces 570 E. Pig and Palindromes (dp)
    codeforces 570 D. Tree Requests (dfs序)
    poj 2157 Maze (bfs)
    cf 570 C. Replacement (暴力)
    cf 570B B. Simple Game(构造)
    cf 570 A. Elections
    hdu 1429胜利大逃亡(续) (bfs+状态压缩)
  • 原文地址:https://www.cnblogs.com/gbhh/p/13780958.html
Copyright © 2011-2022 走看看