1.2数据抽象

数据类型指的是一组值和一组对这些值操作的集合。java编程的基础是使用class关键字构造被称为引用类型的数据类型。这种编程风格也称为面向对象编程,它的核心是面向对象,即保存了某个数据类型的值的实体。抽象数据类型(ADT)是一种能够对使用者隐藏数据表示的数据类型。用途为:
以适用于各种用途的API形式准确地定义问题;用API的实现描述算法和数据结构。

 A.使用抽象数据类型(要使用抽象数据类型并不一定知道它是怎么实现的 ),因为我们将使用应用程序编程接口(API)来说明抽象数据的行为,我们需要借助声明变量,创建对象来保存数据类型的值并允许通过实例方法来操作他们。
    对象是能都承载数据类型的值的实体:状态(数据类型中的值),标识(能够将一个对象区别于另一个对象,就是它在内存中的位置),行为(数据类型的操作)。
    创建对象:我们需要用new关键字紧跟类名以及(),每次调用new,系统会:为新的对象分配内存空间,调用构造函数初始化对象中的值,返回该对象的一个引用。调用实例方法的方式是先写出对象的变量名,接一个句号,然后是实例方法的名称。
    赋值语句:使用引用类型的赋值语句将会创建该引用的一个副本,赋值语句不会创建新的对象,而是创建另一个指向某一个已经存在的对象的引用,这种情况叫做别名。复制的是引用,而不是实际的值。
    将对象作为参数传递。一般可以简化代码。当我们调用一个需要参数的方法时,该动作在java当中相当于每个参数值都出现在了赋值语句的右侧,而参数名则出现在了赋值语句的左侧。也就说java将参数值的一个副本从调用端传递给了方法,是按值传递,无法改变原始对象的引用,但可以改变复制对象的值。
    数组也是对象,当我们将数组传递给方法时,实际上创建了一个别名,可以操作数组对象。
    字符串:java的string是一种重要而且实用的抽象数据类型,一个string值是一串可以由索引访问的char值。
    需要使用class实现抽象数据类型,创建实例变量,构造函数,以及可供对象调用的实例方法。
    java提供了三种变量:
        参数变量(在方法被调用时参数方法会被初始化为调用者提供的值)
        局部变量(当前代码段中它的定义之后的所有语句)
        实例变量(它们为该类的对象保存了数据类型的值,作用域是整个类)
    抽象数据类型:一种向用例隐藏内部表示的数据类型。

 B.数据类型的设计:
封装
        1.独立开发用例和实现的代码
        2.切换至改进的实现而不会影响用例的代码
        3.支持尚未编写的程序
设计API
接口继承:通过调用接口中的方法操作实现该接口的任意类型的对象
子类继承:定义一个子类来继承父类的所有实例方法和实例变量,子类包含
        的方法比父类更多,另外子类可以重新定义或者重写父类的方法
内存管理:java会在原始数据类型声明变量时为它们预留内存空间,并会在     
         它们离开作用域后释放这些空间;在创建对象时为它分配内存空
         间,但是程序在执行时的动态性决定了一个对象何时变成孤儿。
契约式设计:
        异常:一般用于处理不受我们控制的不可预见的错误
        断言:验证我们在代码中做出的一些假设
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值