美文网首页
20160710_Programming

20160710_Programming

作者: 2016AF | 来源:发表于2016-07-10 21:03 被阅读0次

    ------JAVA20160710------
    1、实际的数组对象存储在堆内存中,如果引用该数组对象的数组引用变量是一个局部变量,那么它被存储在栈内存中
    2、将数组变量设置为null,垃圾回收机制将回收该数组对象
    3、对象数组Object arrayName = new Object[2];此时只是一个空引用,还需要对每个数组元素进行赋值引用
    4、Java里多维数组的本质仍是一维数组,只不过每个数组元素都是一个一维数组引用
    5、操作数组的Arrays类
    int binarySearch(type[] a, type key):使用二分法查询key元素值在a数组中出现的索引,如果不包含key值,则返回负数。调用该方法时要求数组中元素已经按升序排列
    int binarySearch(type[] a, int fromIndex, int toIndex, type key):与前一个方法类似,但只搜索a数组中formIndex到toindex索引的元素,数组必须按照升序排列
    type[] copyOf(type[] original, int length):把original数组复制称一个新数组,其中length是新数组的长度,如果length小于original数组的长度,则新数组是原数组前length个元素;如果length大于原数组的长度,则新数组的前面元素是原数组的所有元素,后面补充0(数值类型)、false(布尔类型)或者null(引用类型)
    type[] copyOfRange(type[] original, int from, int to):与前面的方法类似,但只复制原数组的from索引到to索引的元素
    boolean equals(type[] a, type[] a2):如果两个数组长度相等,元素也一一相同,则返回true,否则false
    void fill(type[] a, type val):该方法将会把a数组的所有元素都赋值为val
    void fill(type[] a, int fromIndex, int toIndex, type val):将a数组的fromIndex到toIndex索引的数组元素赋值为val
    void sort(type[] a):对a数组的元素进行排序
    void sort(type[] a, int fromIndex, int toIndex):对a数组的formIndex到toIndex索引的数组元素进行排序
    void 同String(type[] a):将数组转换为一个字符串,数组元素之间以英文逗号,和空格隔开
    void parallelPrefix(xxx[] array, XxxBinaryOperator op):该方法使用op参数指定的计算公式计算得到的结果作为新的元素。op计算公式包括left、right两个形参,其中left代表数组中前一个索引处的元素,right代表数组中当前索引处的元素,当计算第一个新数组元素时,left的值默认为1
    void paralleleprefix(xxx[] array, int formIndex, int toIndex, XxxBinaryOperator op):该方法与上一个类似,区别是仅重新计算fromIndex到toIndex索引的元素
    void setAll(xxx[] array, IntToXxxFunction generator):使用指定的生成器(generator)为所有数组元素设置值,该生成器控制数组元素的值的生成算法
    void parallelSetAll(xxx[] array, IntToXxxFunction generator):与上一个方法类似,只是该方法增加了并行的能力,可利用多CPU来提高性能
    void parallelSort(xxx[] a):与sort()方法类似,只是该方法增加了并行能力
    void parallelSort(xxx[] a, int fromIndex, int toIndex):与上一个方法类似,只是只对formIndex到toIndex索引的元素进行排序
    Spliterator.OfXxx spliterator(xxx[] array):将该数组的所有元素转换成对应的Spliterator对象
    Spliterator.OfXxx spliterator(xxx[] array, int startInclusive, int endExclusive):与上一个方法类似,该方法仅转换startInclusive到endExclusive索引的元素
    XxxStream stream(xxx[] array):该方法对数组转换为Stream,Steam是Java8新增的流式编程的API
    XxxStream stream(xxx[] array, int startInclusive, int endExclusive):与上一个方法类似,但该方法仅转换formIndex到toIndex索引的元素为Stream
    以上的xxx代表元素类型(int、long等)
    System类中:
    void arraycopy(Object src, int srcPos, object dest, int destPost, int length):将src数组里的元素赋值给dest数组的元素,其中srcPos指定从src数组的第几个元素开始赋值,length参数指定src数组的多少个元素赋给dest数组的元素
    6、定义类的语法
    [修饰符] class 类名{
    零个到多个构造器定义
    零个到多个成员变量
    零个到多个方法
    }
    修饰符可以是 public、final、abstract、省略
    命名规则:一个或多个有意义的单词组成,每个单词首字母大写,不使用分隔符
    static方法不能调用非static方法
    static修饰的方法和成员变量,既可通过类来调用,也可通过实例来调用;没有使用static修饰的普通方法和成员变量,只可通过实例来调用。
    栈内存里的引用变量并未真正存储对象的成员变量,对象的成员变量数据实际存放在堆内存里;而引用变量只是指向该堆内存里的对象
    希望垃圾回收器回收某个对象,只需使该对象引用设置为null
    在类方法里使用this,代表调用该方法的类
    如果方法里有个局部变量和成员变量同名,但程序又需要在该方法里访问这个被覆盖的成员变量,则必须使用this前缀ss
    A.定义成员变量的语法格式:
    [修饰符] 类型 成员变量名 [=默认值];
    修饰符可以是public、protected、private、static、final,其中public、protected、private只能三选一,可以与static,final组合起来修饰成员变量
    B.定义方法的语法格式:
    [修饰符] 方法返回值类型 方法名(形参列表){
    statement;
    }
    修饰符可以是public、protected、private、static、final,其中public、protected、private只能三选一,可以与static,final组合起来修饰成员变量
    方法名通常以动词开头
    C.构造器的语法格式
    [修饰符] 构造器名(形参列表){
    statement;
    }
    修饰符可省略,也可以是public、protected、private其中之一
    构造器名必须和类名相同
    构造器不能有返回值
    7、参数可变的方法
    格式:[类型] ... 参数名
    可变参数本质上是一个一维数组
    长度可变的形参只能处于形参表的最后一个,一个方法最多只能包含一个包含一个长度可变的形参
    调用包含一个长度可变形参的方法时,这个长度可变的形参既可以传入多个参数,也可以传入一个数组
    8、递归方法
    一个方法体内调用它自身,被称为方法递归
    当一个方法不断调用它本身时,必须在某个时刻方法的返回值是确定的,即不再调用它本身,否则这个递归就变成了无穷递归
    递归一定要向已知方向递归

    ------read by <疯狂Java> P121------

    ------数据结构20160710------
    1、数据结构是相互之间存在一种或多种特定关系的数据元素的集合。
    2、程序设计 = 数据结构 + 算法
    3、数据是描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合
    4、数据元素:是组成数据的、有一定意义的基本单位,在计算机中通常作为整体处理,也被称为记录
    5、数据项:一个数据元素可以由若干个数据项组成
    6、数据项是数据不可分割的最小单位
    7、数据对象:是性质相同的数据元素的集合,是数据的子集
    8、逻辑结构:是指数据对象中数据元素之间的相互关系
    A.集合结构:集合结构中的数据元素除了同属同一个集合外,她们之间没有其他关系
    B.线性结构:线性结构中的数据元素之间是一对一的关系
    C.树形结构:树形结构中的数据元素之间存在一种一对多的层次关系
    D.图形结构:图形结构的数据元素是多对多的关系
    9、物理结构(存储结构):是指数据的逻辑结构在计算机中的存储形式
    A.顺序存储结构:是把数据元素存放在地址相连的存储单元里,其数据间的逻辑关系和物理关系是一致的
    B.链式存储结构:是把数据存放在任意的存储单元里,这组存储单元可以是连续的,也可以是不连续的
    10、数据类型
    数据类型:是指一组性质相同的值的集合及定义在此集合上的一些操作的总称
    抽象数据类型(Abstract Data Type, ADT):是指一个数学模型及定义在该模型上的一组操作
    抽象数据类型体现了程序设计中问题分解、抽象和信息隐藏的特性
    抽象数据类型的标准格式:
    ADT 抽象数据类型名
    Data
    数据元素之间逻辑关系的定义
    Operation
    操作1
    初始条件
    操作结果描述
    操作2
    ...
    操作n
    ...
    endADT

    ------ready by <大话数据结构> P16------

    ------数据库20160710------
    1、DBMS:数据库管理系统(Database Management System)
    2、数据定义语言DDL(Data Definition Language)
    3、数据操作语言DML(Data Manipulation Language)
    4、RDBMS:关系型数据库管理系统(Relational Database Management System)
    5、数据库大体可分为网状数据库、层次数据库、关系数据库三类
    6、SQL语言包含
    A.数据定义语言DDL,定义
    B.数据操作语言DML,操作
    C.数据控制语言(Data Controlling Language,DCL),控制
    7、修改登录验证模式
    1、“我的电脑”-“管理”-“SQL Server配置管理器”-“SQL Server网络配置”-“MSSQLSERVER协议”-“TCP/IP”-“启用”
    2、“Named Pipes”-“启用”-“SQL Server服务”-“SQL Server(MSSQLSERVER)”-“重启”
    3、右击数据库-“属性”-“安全性”-“SQL Server和Windows身份验证模式”-
    4、数据库列表-“安全性”-“登录名”-“双击sa账户”-“取消强制实施密码策略”-“状态”-“启用”
    8、使用指定的数据库
    A.直接在SQL Server Management Studio中选择
    B.use 数据库名

    ------read by <大话数据库> P20------

    ------ANDROID20160710------
    1、android系统架构
    A.Linux内核层
    B.系统运行库层
    C.应用框架层
    D.应用层
    2、四大组件:活动activity、服务Service、广播接收器Broadcast Receiver、内容提供器Content Provider
    3、Android项目目录
    src:Java源代码目录
    gen:自动生成,R.java文件是资源文件,项目中添加的任何资源都会在其中生成一个相应的资源id
    assets:存放随程序打包的文件,程序运行时可以动态读取
    bin:编译时自动产生的文件,包括编译好的安装包
    libs:项目中使用的第三方jar包必须放在这个目录下
    res:项目中使用到的所有图片、布局、字符串资源都要放在这个目录下,图片放在drawable目录下,布局放在layout目录下,字符串放在values目录下
    AndroidManifest.xml:整个Android项目的配置文件
    project.properties:指定编译程序时所使用的SDK版本
    4、每一个创建的活动Activity必须在AndroidManifest.xml中进行注册,否则程序崩溃
    <activity
    android:name="com.test.helloworld.HelloWorldActivity"
    android:label="@string/app_name"
    <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    </activity>
    5、LogCat打印日志方法
    Log.v() 对应级别verbose
    Log.d() 对应级别debug
    Log.i() 对应级别info
    Log.w() 对应级别warm
    Log.e() 对应级别error
    log.d("HelloWroldActivity","onCreate execute");第一个参数是tag,第二个参数是msg

    ------read by <android 第一行代码> P27------

    相关文章

      网友评论

          本文标题:20160710_Programming

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