美文网首页
javaSE核心技术-面向对象基础

javaSE核心技术-面向对象基础

作者: 狼人_4e19 | 来源:发表于2018-11-30 18:39 被阅读0次

    面向过程编程思想

    面向过程的抽象是将实现一个功能的一组命令组合成为一个函数,这个函数就能实
    现这一个功能,是对功能实现的一种抽象,有了函数,我们就没有必要重复写很多
    的代码(特殊地譬如递归,可通过循环替代),仅仅一个代码集合名称以及参数就能
    调用抽象的命令集合。

    面向对象编程包括

    面向对象的分析(OOA,Object Oriented Analysis)
    面向对象的设计(OOD,Object Oriented Design)
    面向对象的编程实现(OOP,Object Oriented Programming)
    面向对象编程思想实际上就是一种运用对象、类、继承、封装、聚合、关
    联、消息、多态性等概念来构造系统的软件开发方法。
    实现


    图片.png

    分析系统中涉及的事务,根据“对象”抽象出“类”;
    找出对象共有的特点,并且在类中定义为属性;
    找出对象共有的行为,并且定义为类的方法。

    面向对象概念

    -抽象(动词)
    -对象
    -类:类是一组具有相同属性和行为的对象的抽象,类的作用是用来创建对象,对
    象是类的一个实例
    -类和对象的关系
    抽象和具体的关系。
    每一个类在某一时刻都有零个或更多的实例, 类是生成对象的模板
    一个类定义了使用哪些数据来描述属性,每一个对象都有相应的属性值数据
    ,一个类通过一系列方法来定义行为,这些方法能在每个对象中被激活

    类的定义

    把相似的对象划归成一个类。
    在软件设计中,类,就是一个模板,它定义了通用于一个特定种
    类的所有对象的属性(变量)和行为(方法)。
    格式:


    图片.png

    编码规范:
    类名单词首字母大写
    属性和方法第一个单词小写,其他单词首字母大写

    属性和局部变量对比

    局部变量
    方法体中声明的变量、方法中的参数或代码块中声明的变量,都是局部
    变量


    图片.png

    属性可以和局部变量同名,使用关键字this进行区分


    图片.png
    图片.png

    认识对象

    类和对象的关系
    类是创建对象的模板,对象是类的实例。

    对象的创建

    什么是对象
    类(class)是对某一类事物的描述
    对象(object)是实际存在的某类事物的个体,也称实例(instance)
    创建语法语句:
    Employee(类名) zhang(对象名)=new Employee(类名)

    对象的使用

    在其他类中,使用对象名点运算符调用属性和方法
    -引用类的属性:对象名。属性
    -引用类的方法:对象名。方法名(实参)

    对象的创建

    1.编写一个类
    2.在主函数中创建对象、
    3.运行有主函数的类
    只有主函数的类才能运行
    无论有多少个类,只要主函数中创建对象,才会占用内存。

    创建多个对象

    创建匿名对象
    创建完对象,在调用该对象的属性或方法时,也可以不定义对象的句柄
    ,而直接调用这个对象的方法。这样的对象叫匿名对象。
    如果只使用该对象进行一次方法或属性调用,可以创建匿名对象。

    构造方法

    构造器(constructor)
    -构造方法也是方法,但是它是特殊的方法而已
    -所有对象都是通过构造器来创建的
    创建对象:类名 对象名=new 构造方法();
    构造器(构造方法/构造器,constructor)特点:
    -构造方法名必须与类名称相同
    -不含返回值类型,也没有void
    -不能在方法中用return语句返回一个值


    图片.png

    构造方法作用

    构造方法用来完成对象的创建,即完成对象的实例化
    -在java中,每个类都至少有一个构造器
    -一个类可以不写出构造方法,编译器会自动给这个类增加一个构造器,该构造器没有任何参数,称:默认的空构造器。

    构造方法重载

    构造方法可以像普通方法一样发生重载,通常一个类中不止一个构造方法,而是有多个不同参数的构造器,用户可以根据需要选择不同的构造器创建对象。
    -一般可以使用构造器来完成对成员变量的初始化。


    图片.png

    有带参的构造器,那么不带参的空构造器不会自动产生。为了防止在某
    些情况下还想使用这样的无参数默认构造器,因此最好还是养成写出这
    个无参数的构造器来,以备后用。


    图片.png

    构造方法的调用

    在其他类只能在创建对象时调用一次构造方法。
    普通方法可以在创建对象后,使用点运算符调用多次。


    图片.png

    多次调用构造器,一个类可以实例化多个对象。


    图片.png

    java包的概念

    在Java中,包主要有以下用途 :
    包允许将类组合成较小的单元
    有助于避免命名冲突
    包允许在更广的范围内保护类、数据和方法
    语法: package 包名:

    Java类库中常用的包

    java.lang: java默认包,任何程序中,该包都被自动导入。

    java.io:输入/输出操作有用的类的组成。

    访问同包中的类

    位于同一包中的类可以直接访问并使用

    访问不同包中的类

    使用import关键字引入其他包中的类
    必须在package声明后面,类声明前
    import语句可以出现多次。


    图片.png

    package和import说明

    package说明:
    package像是我们的姓,而class名称就像是我们的名字
    package和package的附属关系用”.”来连接,这就像是复姓。

    import说明:

    import就是在java文件开头的地方,先说明会用到哪些类。
    接着就能在代码中只用类名指定某个类,也就是只称呼名字,不称呼她的姓。


    图片.png

    import使用通配符

    import可以使用星号(*)通配符

    代码封装

    封装关键字:
    -private(私有):只能被该类的成员访问,private权限最小,限制类外访问。
    -default(默认):不使用权限修饰符时(即default)的成员在类内以及
    在同一个包中的其他类可以访问。
    public(公有):公有的,最高的访问级别,public成员可以在所有其
    他类中访问


    图片.png

    封装的常规属性
    -将类中的属性用private关键字进行隐藏
    -通过规定方法访问属性,一般通过set开头的公有方法对属性赋值,用get开头的共有方法得到属性的值。
    -在方法中加入控制语句,对不合法数据进行检查。

    静态:static关键字

    static关键字可以修饰的元素
    -属性
    所有对象共享,称为静态变量或类变量
    不用static修饰的属性称为实例变量
    注意:只能修饰属性,不能修饰局部变量。
    -方法
    不需要实例化,可以直接访问,称静态方法或类方法。
    -代码块

    静态属性

    静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内
    存中只有一个副本,它当且仅当在类初次加载时会被初始化。而非静态
    变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各
    个对象拥有的副本互不影响。

    两种方式访问

    直接访问:类名.属性
    实例化后访问:对象名.属性(不建议使用)

    静态语句块

    一个类中由static关键字修饰的,不包含在任何方法体中的代码块
    当类被载入时,静态代码块被执行,且只被执行一次
    静态块经常用来进行类属性的初始化

    单例模式

    单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
    单例模式要点:
    -某个类只能有一个实例
    -它必须自行创建这个实例
    -必须自行向整个系统提供这个实例


    图片.png

    相关文章

      网友评论

          本文标题:javaSE核心技术-面向对象基础

          本文链接:https://www.haomeiwen.com/subject/ucjzqqtx.html