精华内容
下载资源
问答
  • 程序设计语言的基本概念

    千次阅读 2019-01-20 16:56:37
    程序设计语言是为了书写计算机程序而人为设计的符号语言,用于对计算过程进行描述、组织和推导。 程序设计语言的广泛使用始于1957年出现的FORTRAN,程序设计语言的发展是一个不断演化的过程,其根本推动力是更高的...

    在这里插入图片描述

    程序设计语言是为了书写计算机程序而人为设计的符号语言,用于对计算过程进行描述、组织和推导。

    程序设计语言的广泛使用始于1957年出现的FORTRAN,程序设计语言的发展是一个不断演化的过程,其根本推动力是更高的抽象机制以及对程序设计思想的更好支持。

    低级语言与高级语言

    计算机硬件只能识别由0、1组成的机器指令序列,即机器指令程序,因此机器指令是最基本的计算机语言。

    由于机器指令是特定的计算机系统所固有的、面向机器的语言,所以用机器语言进行程序设计时效率很低,程序的可读性很差,也难以修改和维护。

    因此,人们就用易记忆的符号代替0、1序列来表示机器指令,例如,用ADD表示加法,用SUB表示减法等。用符号表示的指令称为汇编指令,汇编指令的集合被称为汇编语言。

    汇编语言的源程序由若干条语句组成,其中可以有三类语句:指令语句、伪指令语句和宏指令语句

    指令语句又称为机器指令语句,将其汇编后能产生相应的机器代码,这些代码能被CPU直接识别并执行相应的操作。基本的指令有ADD、SUB和AND等,书写指令语句时必须遵守指令的格式要求。

    伪指令语句指示汇编程序在汇编源程序时完成某些工作,例如为变量分配存储单元地址,给某个符号赋一个值等。伪指令语句经编译后不产生机器代码。

    在汇编语言中,还允许将多次重复使用的程序段定义为宏。宏指令语句就是宏的引用。

    汇编语言的书写格式在很大程度上取决于特定计算机的机器指令,因此它仍然是一种面向机器的语言,人们称机器语言和汇编语言为低级语言

    在此基础上,人们开发了功能更强、抽象级别更高的语言以支持程序设计,于是就产生了面向各类应用的程序设计语言,称为高级语言。常见的有Java、C、C++、PHP、Python等。

    程序设计语言的定义

    一般地,程序设计语言的定义都涉及语法、语义和语用等方面。

    语法是指由程序设计语言的基本符号组成程序中的各个语法成分(包括程序)的一组规则。其中由基本字符构成的符号(单词)书写规则称为词法规则,由符号构成语法成分的规则称为语法规则。

    语义是程序设计语言中按语法规则构成的各个语法成分的含义,分为静态语义和动态语义。静态语义是指编译时可以确定的语法成分的含义,而运行时刻才能确定的含义是动态语义。

    一个程序的执行效果说明了该程序的语义,它取决于构成程序的各个组成部分的语义。

    语用表示了构成语言的各个记号和使用者的关系,设计符合的来源、使用和影响。

    程序设计语言的分类

    (1) 命令式和结构化程序设计语言

    命令式语言是基于动作的语言,在这种语言中,计算被看成是动作的序列。命令式语言族开始于Fortran,Pascal和C语言都可以体现命令式程序设计的关键思想。

    在这种语言中,计算机被看作是动作的序列,程序就是用语言提供的操作命令书写的一个操作序列。用命令式程序设计语言编写程序,就是描述解题过程中每一步的过程,程序的运行过程就是问题的求解过程,因此也称为过程式语言。

    机器语言及汇编语言是最早的命令式语言。

    通常所称的结构化程序设计语言属于命令式语言类,其结构特性主要体现在以下几个方面:

    一是用自顶向下的逐步精化的方法编程,二是按模块组织的方法编程,三是程序只包含顺序、判定及循环构造,而且每种构造只允许单入口和单出口。

    结构化程序的结构简单清晰、模块化强,描述方式接近人们习惯的推理式思维方式,因此可读性强。C、PASCAL等都是典型的结构化程序设计语言。

    (2) 面向对象的程序设计语言

    程序设计语言的演化从机器语言开始到汇编语言到各种结构化高级语言,最后到支持面向对象技术的面向对象语言,反映的就是一条抽象机制不断提高的演化道路。

    C++、Java和Smalltalk是面向对象程序设计语言的代表,它们都支持封装、继承、多态等面向对象技术。

    (3) 函数式程序设计语言

    函数式设计语言是一类以λ演算为基础的语言,其基本概念来自于LISP,这是一个在1958年为了人工智能应用而设计的语言。函数是一种对应规则(映射),使定义域的每个元素和值域中的唯一的元素相对应。

    常见的函数式程序设计语言有Haskell、Scala、Scheme、APL等。

    (4) 逻辑型程序设计语言

    逻辑型程序设计语言是一类以形式逻辑为基础的语言,其代表是建立在关系理论和一阶谓词理论基础上的PROLOG。PROLOG有很强的推理功能,适用于编写自动定理证明、专家系统和自然语言理解等问题的程序。

    展开全文
  • 考点1 编译与解释(★★★) 【考法分析】 1、本知识点的考查形式主要有:给出编译与解释...将源程序翻译成目标语言程序,然后再计算机上运行目标程序。 3、两者的根本区别:编译方式下,机器上运行的是与源程...

    考点1 编译与解释(★★★)

    【考法分析】

    1、本知识点的考查形式主要有:给出编译与解释相关的描述,判断正误;给出编译各个阶段的描述,判断正误。

    【要点分析】

    1、解释程序,也称解释器;直接解释执行源程序,或者将源程序翻译成某种中间代码后再加以执行。

    2、编译程序,也称编译器;将源程序翻译成目标语言程序,然后再计算机上运行目标程序。

    3、两者的根本区别:编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程,因此执行时效率较高;解释方式下,解释程序和源程序(或某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序,边解释边执行,执行效率较低。即:解释方式,翻译程序不生成独立的目标程序,而编译方式则生成独立保持的目标程序。

    4、编译过程:

    (1)词法分析阶段:是编译过程的第一阶段,其任务是对源程序从前到后(从左到右)逐个字符扫描,从中识别出一个个“单词”符号。词法分析过程的依据是语言的词法规则,即描述“单词”结构的规则。

    词法错误:非法字符,关键字或标识符拼写错误。

    (2)语法分析阶段:其任务是在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位。通常语法分析是确定整个输入串是否构成一个语法上正确的程序。一般来说,通过编译的程序,不存在语法上的错误。

    语法错误:语法结构出错,if endif不匹配,缺分号。

    (3)语义分析阶段:其任务主要检查源程序是否包含静态语义错误(动态语义错误在执行过程中才能发现),并收集类型信息供后面的代码生成阶段使用。语义分析的一个主要工作是进行类型分析和检查。

    语义错误:死循环,零除数,其它逻辑错误。

    (4)中间代码生成:其任务是根据语义分析的输出生成中间代码。此阶段不是必须的。常见的中间代码有:树、后缀式、三地址码(四元式)。

    (5)代码优化:其任务是优化中间代码。此阶段不是必须的。

    (6)目标代码生成:是编译器工作的最后一个阶段。其任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或汇编指令代码。本阶段与具体机器密切相关。

    (7)符号表的作用是记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成,在编译过程中需要对符号表进行快速有效地查找、插入、修改和删除等操作。符号表的存在可以贯穿编译所有阶段。

    【备考点拨】

    1、掌握编译与解释的区别;

    2、掌握编译器的工作过程。

     

    考点2 文法(★★)

    【考法分析】

    1、本知识点的主要考查方式有:给出一些概念的描述判断正误;给出一个文法的描述,判断能够识别的字符串。

    【要点分析】

    1、文法相关的概念:一个形式文法是一个有序四元组G=(V,T,S,P),其中:

     1)V:非终结符。不是语言组成部分,不是最终结果,可理解为占位符。

     2)T:终结符。是语言的组成部分,是最终结果。 VT=

     3)S:起始符。是语言的开始符号。

     4)P:产生式。用终结符替代非终结符的规则。形如α→β

    2、文法的分类:

    注:常见的程序设计语言一般是上下文无关文法。

    3、文法与语法树的推导:

    例:文法G=({a, b}, {S, A}, S, P),其中:S→aAS|a;A→SbA|SS|ba。请构造句型aabAa的推导树。

    S → aAS; S → a; A → SbA;A → SS; A → ba。

    【备考点拨】

    1、掌握文法相关的概念和分类、对应的自动机;

    2、掌握语法推导树。

     

    考点3 正规式(★★★★)

    【考法分析】

    1、本知识点的主要考查形式有:给出正规式指出符合要求的字符串;或给出一些相关的描述判断其正误;或结合有限自动机考查。

    【要点分析】

    1、正规式是描述程序语言单词的表达式,对于字母∑,其上的正规式及其表示的正规集可以递归定义如下。

      ① ε是一个正规式,它表示集合L(ε)={ε}。

      ② 若a是∑上的字符,则a是一个正则式,它所表示的正规L(a)={a}。

      ③ 若正规式r和s分别表示正规集L(r)=L(s),则

      (a)r|s是正规式,表示集合L(r)∪L(s);

      (b)r·s是正规式,表示集合L(r)L(s);

      (c)r*是正规式,表示集合(L(r))*;

      (d)(r)是正规式,表示集合L(r)。

    仅由有限次地使用上述三个步骤定义的表达式才是∑上的正规式。由此可见,正规式要么为空,要么由字母、或、连接、闭包运算符组成。其中闭包运算符“*”具有最高的优先级,连接运算具有次高优先级,或运算符“|”具有最低优先级。

    2、常见正规式的含义:

    【备考点拨】

    1、掌握正规式相关的概念;

    2、掌握常见的正规式表示含义。

     

    考点4 有限自动机(★)

    【考法分析】

    1、本知识点的主要考查形式有:给出一个确定或不确定的有限自动机,指出其能够识别的字符串,或指出对应的正规式表示。

    【要点分析】

    1、定义:M=(S,∑, δ,S0,Z)

    1)S是一个有限集,每个元素为一个状态

    2)∑是一个有穷字母表,每个元素为一个输入字符

    3)δ是转换函数:是一个单值对照

    4)S0,属于S,是其唯一的初态

    5)Z是一个终态集(可空)

    2、一个有限自动机所识别的语言是从开始状态到终止状态所有路径上的字符串的集合。要判断一个字符串能否被指定的自动机识别,就看在该自动机的状态图中能否找到一条从开始状态到达终止状态的路径,且路径上的字符串等于需要识别的字符串。而对于其正规式,可以通过能够识别的字符串去总结规律。

    例:下图所示的有限自动机中,s0是初始状态,s3为终止状态,该自动机不能识别()。

    A.abab        B.aaaa       C.babb          C.abba

    问题解析:      

        一个有限自动机所识别的语言是从开始状态到终止状态所有路径上的字符串的集合。要判断一个字符串能否被指定的自动机识别,就看在该自动机的状态图中能否找到一条从开始状态到达终止状态的路径,且路径上的字符串等于需要识别的字符串。

        对于字符串“abab”,其识别路径为s0→s1→s2→s1→s2,字符串结束时的状态不是终止状态,所以该自动机不能识别“abab”。

        对于字符串“aaaa”,其识别路径为s0→s1→s3→s3→s3,字符串结束时的状态是终止状态,所以该自动机可以识别“aaaa”。

        对于字符串“babb”,其识别路径为s0→s2→s1→s2→s3,字符串结束时的状态是终止状态,所以该自动机可以识别“babb”。

        对于字符串“abba”,其识别路径为s0→s1→s2→s3→s3,字符串结束时的状态是终止状态,所以该自动机可以识别“abba”。

    【备考点拨】

    1、掌握有限自动机相关的基本概念;

    2、掌握有限自动机能够识别的字符串判断;

    3、掌握有限自动机与正规式的对应关系。

     

    考点5 后缀表达式(★★★)

    【考法分析】

    1、本知识点的主要考查形式有:给出概念描述判断正误;给出表达式或其语法树,要求指出其后缀表达形式。

    【要点分析】

    1、前缀表达式(+ab):把运算符写在运算对象的前面。 (语法树的先序遍历)

    2、中缀表达式(a+b):把运算符写在运算对象的中间。

    (语法树的中序遍历,是常见的表达式形式,父节点是运算符(括号不用表示),孩子结点是运算符的参数,据此可以构造出其语法树。)

    3、后缀表达式(ab-):又叫做逆波兰式,把运算符写在运算对象的后面。

    (语法树的后序遍历,常与栈结合使用。)

    【备考点拨】

    1、掌握表达式构造语法树的过程;

    2、掌握后缀表达式相关的概念和求取过程。

     

    考点6 传值与传址(★★★★)

    【考法分析】

    1、本知识点的主要考查形式有:给出一些相关的描述判断其正误;给出一些代码,其中部分参数是传值调用,部分参数是传址调用,求取最终结果。

    【要点分析】

    1、函数的格式:

    2、传值和传址(引用)调用的对比:

    例:

    【备考点拨】

    1、掌握传值与传址调用相关概念;

    2、能够根据代码,得出最终的结果(注意其中传值与传址调用的区别)。

     

    考点7 多种程序语言特点(★★★)

    【考法分析】

    1、本知识点的主要考查形式有:给出特定描述指出其对应的程序语言;或给出程序语言指出其对应描述的正误。

    【要点分析】

    1、常见的程序设计语言:

    (1)Fortran语言(第一个高级程序设计语言,科学计算,执行效率高)

    (2)Pascal语言(结构化程序设计语言,表达能力强,Delphi)

    (3)C语言(通用、结构化程序设计语言,指针操作能力强,高效)

    (4)Lisp语言(函数式程序语言,符号处理,人工智能)

    (5)C++语言(C语言基础上增加了类机制,面向对象,高效,与C兼容)

    (6)Java语言(面向对象,中间代码,跨平台,通用的程序设计语言)

    (7)Python(面向对象,解释型程序设计语言,胶水语言,通用的脚本语言)

    (8)PHP(服务器端脚本语言,制作动态网页)

    (9)Ruby(简单快捷、面向对象、脚本语言)

    (10)Delphi(快速应用程序开发工具,可视化编程环境)

    (11)COBOL(数据处理领域最为广泛的程序设计语言,高级编程语言)

    (12)XML(可扩展标记语言,标准通用标记语言的子集 )

    (13)PROLOG(逻辑式语言,间接性,表达能力强,建造专家系统、数据库、自然语言理解、智能知识库等)

    注:C/C++常被用于操作系统开发;脚本语言是解释性语言。

    【备考点拨】

    1、掌握常用程序设计语言的特点,能够加以区分。

     

    展开全文
  • 程序设计语言基础知识复习

    千次阅读 多人点赞 2019-03-12 18:02:40
    (一) 程序设计语言基本概念 1、计算机硬件只识别机器指令序列,因此机器指令是最基本的计算机语言。机器语言设计程序效率很低,程序可读性很差,很难修改和维护,因此,用符号代替0、1序列来表示机器指令。用符号...

    (一) 程序设计语言基本概念

    1、计算机硬件只识别机器指令序列,因此机器指令是最基本的计算机语言。机器语言设计程序效率很低,程序可读性很差,很难修改和维护,因此,用符号代替0、1序列来表示机器指令。用符号表示的指令称为汇编指令,汇编指令的集合称为汇编语言。汇编语言和机器语言是低级语言。此基础上,开发出功能更强、抽象级别更高的语言以支持程序设计,称为高级语言。eg:JAVA、C、C++、PHP、Python、Delphi、PASCAL等。

    2、计算机只能理解机器语言,因此高级程序设计语言需要翻译,担任这一任务的程序称为“语言处理程序”。语言之间的翻译形式有多种,基本方式为汇编、解释和编译。高级语言或汇编语言编写的程序称为源程序。汇编语言编写的源程序需要一个汇编程序将其翻译成目标程序后才能执行,高级语言编写的源程序则需要对应的解释程序(解释器:直接解释执行源程序或者将源程序翻译成某种中间代码后加以执行)或编译程序(编译器:将源程序翻译成目标语言程序,然后在计算机上运行目标程序)对其进行翻译,然后在机器上运行。

    解释程序与编译程序的根本区别:编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程,解释方式下,解释程序和源程序要参与到程序的运行过程中,运行程序的控制权在解释程序。简单说:在解释方式下,翻译源程序时不生成独立的目标程序,而编译器则将源程序翻译成独立保存的目标程序。

    3、程序设计语言的定义涉及语法(程序设计语言的基本符号组成程序中的各个语法成分的一组规则)、语义(按语法规则构成的各个语法成分的含义,可分为静态语义和动态语义)和语用(表示构成语言的各个记号和使用者的关系)等方面。

    4、根据设计程序的方法将程序语言分为命令式和结构化程序设计语言(通常说的结构化程序设计语言属于命令式语言类,其结构特性反映在以下几点:1、用自顶向下逐步精化的方法编程 2、模块组织的方法编程 3、程序只包含顺序、判定(分支)及循环构造)、面向对象的程序设计语言(对象、类)、函数式程序设计语言(特点:表达式中出现的任何函数都可以用其他函数来代替,只要这些函数调用产生相同的值)和逻辑型程序设计语言(以形式逻辑为基础)等范型。

    5、程序设计语言的基本成分包括:数据、运算、控制和传输等。

    数据成分指一种程序设计语言的数据类型,数据类型用于代表数据对象,还用于在基础机器中完成对值的布局,同时可用于检查表达式中对运算的应用是否正确。数据是程序操作的 对象,使用时要为它分配内存空间。数据名称由用户通过标识符 命名,类型 说明数据占用内存的大小和存放形式,存储类型说明 数据在内存中的位置和生存期。 数据可分为:常量和变量、 全局量和局部量。数据类型有:基本类型(int、char、float、double、bool)、特殊类型(void)、用户定义类型(enum)、构造类型(数组、结构、联合)、指针类型(type*)和抽象数据类型(类类型)。

    运算成分指明允许使用的运算符号及运算规则。

    控制成分指明语言允许表达的控制结构,程序员使用控制成分 来构造程序中的控制逻辑。

    传输成分指明语言允许的数据传输方式,如赋值处理、数据的输入和输出等。

    6、函数

    C程序有一个或多个函数组成,每个函数都有有个名字,有且仅有一个名字为mian的函数作为程序运行的起点。函数是程序模块的主要成分,它是一段具有独立功能的程序。函数使用涉及:函数定义、函数声明和函数调用。

     函数定义包括:函数首部和函数体。C 程序中不允许函数的嵌套定义。

    函数应该先声明后引用。如果程序中对一个 函数的调用在该函数的定义之前进行,则应该在调用前对 被调用函数进行声明。

    调用函数需要使用被调用函数的功能时,以名字进行调用,称为函数调用。函数体调用自己称为递归调用。函数调用时实参与形参间交换信息的方法有值调用和引用调用。

    (二) 语言处理程序基础

    语言处理程序主要将高级语言或汇编 语言编写的程序翻译成某种机器语言程序,使程序 可在计算机上运行。语言处理程序主要分为 汇编程序、编译程序和解释程序3种基本类型。

    1、汇编程序

    汇编语言是为特定的计算机设计的面向机器的符号化的 程序设计语言。汇编语言源程序需要汇编程序进行翻译。汇编语言源程序由若干条语句组成, 其中有三类:指令语句(机器指令语句,汇编后能产生相应的机器代码,可分为传送指令、算数运算指令、逻辑运算指令、移位指令、转移指令和处理机控制指令等类型)、伪指令语句(指示汇编程序在汇编源程序完成某些工作)和宏指令语句(用户将多次重复使用的程序段定义为宏,每个宏有相应的宏名。宏指令语句就是宏的引用)。    伪指令语句汇编后不产生机器代码,指令语句汇编后要产生相应的机器代码。

    汇编程序的功能是将汇编语言编写的源程序翻译成机器指令程序,处理源程序中出现的伪指令。 汇编程序一般需要两次 两次扫描源程序才能完成翻译过程。

    2、编译程序

    编译程序把某高级语言书写的源程序翻译 成与之等价的目标程序。编译程序的工作过程6个阶段:词法分析、语法分析、语义分析、中间代码生成、代码优化和目标代码生成。

    词法分析:对源程序从前到后逐个 字符地扫描,从中识别出一个个单词符号(程序设计语言的基本语法单位)。词法分析输出的单词常以二元组的方式输出, 即单词种别和单词自身的值。

    语法分析:在词法分析 的基础上,根据语言的语法规则将单词符号序列分解 成各类语法单位。语法 规则就是各类各种语法单位的构成规则。通过语法分析确定 整个输入串是否构成一个语法上的正确的程序。

     语法分析和词法分析本质上都是对源程序的结构进行分析。

    语义分析:分析各语法结构的含义, 检查源程序是否 包含静态语义错误,并收集类型信息供后面的代码生成阶段使用。语法语义都正确的源程序才能翻译成正确的目标代码。

    中间代码生成:根据语义分析的输出生成中间代码。中间代码特征:与具体的机器无关。

    语义分析和中间代码生成所依据的是语言的语义规则。

     代码优化:中间代码往往在时间和空间上有较大的浪费,当需要生成高效的目标代码时,必须进行优化。优化过程可以在中间代码生成阶段 进行,也可以在目标代码生成 阶段进行。

    目标代码生成:这是编译器的最后一个阶段,任务是把中间代码变换成特定机器上的绝对指令代码、可重定位的指令代码或 汇编指令代码, 这一阶段工作与具体的机器密切相关。

    符号表管理:符号表作用是记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成,在编译过程中需要对符号表进行快速有效地查找、插入、修改和删除等操作。

    出错处理:源程序错误大致可分为静态错误和动态错误。动态错误也称为动态语义错误,它们发生在程序运行。静态错误指在编译阶段发现的 程序错误,可分为语法错误和静态语义错误。

    3、解释程序

    解释程序是 另一种语言处理程序,在词法、语法和语义分析方面与编译程序的工作 原理基本相同,在是在运行用户程序时,它直接执行源程序或源程序的中间表示形式。因此,解释程序不产生源程序的目标程序,这是它和编译程序的主要区别。

    解释程序实现高级语言的方式:源程序被直接解释执行(解释程序对源程序进行逐个字符的检查,然后执行程序语句规定的动作。运行效率很低)、解释程序也可将源程序翻译成某种中间代码形式,然后对中间代码进行解释来实现用户程序的的运行。

    解释程序通常可以分为两个部分:第一部分是分析部分,包括通常的词法分析、词法分析和语义分析程序, 经语义分析后把源程序翻译成中间代码,中间代码常采用逆波兰表示形式。第二部分是解释部分,用来对第一部分产生的中间代码进行解释执行。

    高级语言编译与解释方式的比较:(1)效率:编译比解释方式可能取得更高的效率。解释方式下运行程序时,解释程序可能需要反复扫描源程序;编译方式下,虽然编译程序创建的目标程序运行的时间一般更长,需要占用的存储空间更多,但源程序只需要被编译程序翻译一次就可以运行,因此总体来讲,编译方式比解释方式可能取得更高的效率(2)灵活性:由于解释程序需要反复检查源程序,使得解释方式比编译方式更灵活。且解释器直接在源程序上工作时,它可以对 错误进行更精准的定位。(3)可移植性:解释器一般也是用某种程序设计语言编写的,因此只要对解释器进行重新编译,就可以使解释器运行在不同的环境中。

    展开全文
  • Java是一门面向对象的程序设计语言

    千次阅读 2019-04-13 10:07:11
    将一个问题抽象出来,并且用编程语言将这个问题解决,这就是程序设计。而人们能够解决的问题的复杂性直接取决于抽象的类型和质量,类型指的是抽象的是什么?质量指的是抽象的程度。 抽象出要解决的问题,通过编程...

    1、什么是程序设计?

    程序设计是对复杂性的管理,待解决问题的复杂性,以及用来解决该问题的工具的复杂性。将一个问题抽象出来,并且用编程语言将这个问题解决,这就是程序设计。而人们能够解决的问题的复杂性直接取决于抽象的类型和质量,类型指的是抽象的是什么?质量指的是抽象的程度。

    抽象出要解决的问题,通过编程语言让计算机实现对应的功能。

    2、什么是编程语言?

    编程语言之于计算机,类似英语对于美国人。编程语言是与计算机交流沟通的工具。

    3、Java语言的设计目标是什么?

    每种编程语言设计的初衷都各不相同,因为当时的语言不能使使用者满意,所以许许多多的编程语言应运而生。Java语言的设计目标在于为程序员减少复杂性。即减少开发健壮代码所需的事件以及困难。(健壮代码,就是能适应变化,同时不容易被破坏的代码,如同健壮的人)。

    上手简单、开发快。

    4、如何学习编程语言?

    先有问题,再有解决方案。程序设计的目的就是为了解决问题,使用哪种语言进行程序设计,这种语言怎么解决这个问题,知道了这些,也就熟悉了这门语言。在头脑中创建一个模型,遇到疑问则用模型推导出答案,不停完善模型。

    内心对Java能做什么,怎么做有个万能公式

    5、面向对象的特性?

    1. 万物皆对象(张三)
    2. 程序是对象的集合(拥有眼睛、鼻子)
    3. 当前对象可以被别的对象拥有(是北大的学生)
    4. 每个对象都属于一种或多种类型(人类、哺乳类、学生)
    5. 某一特定类型的所有对象都可以接受相同的信息(人都会排泄)

    对象具有状态、行为、标识;

    面向对象的诀窍在于先把问题抽象出来,包含哪些模块,一层层的拨开问题的本质。什么样的对象能解决我的问题,他又可以怎么实现。

    6、Java对象详解

    1. 每个对象都有一个接口。(属与1+类型)
    2. 每个对象都提供服务。在编程中应当将对象看作服务的提供者。
    3. 被隐藏的具体实现。封装-电脑CPU,避免被修改、隐藏实现。
    4. 复用具体实现。
      1. 继承。单根继承结构。继承父类,实现接口;奥迪车是车,它拥有奥迪的logo
      2. 组合。汽车具有引擎
    5. 伴随多态的可互换对象。OOP使用了后期绑定,我要买了一辆车,我开车去旅游。当我没实际买车的时候,我不知道车怎么动的,是烧柴油还是烧汽油亦或是用电,我也不关心,这就是后期绑定,实际运行时由实际对象来执行动作。

    7、总结-什么叫面向对象

    将编程需求抽象,组成各个对象,通过对象之间的组合和触发对象的行为完成编程问题。面向过程则是按照顺序执行,以计算机为主体。

     

    展开全文
  • 对高级程序设计语言的基本理解

    千次阅读 2019-07-12 10:20:46
    我是在大学期间开始接触编程,但是学习的第一门程序设计语言是C语言,但是当时只是简单的学习,能用C语言写一些简单的控制台程序,所以当时对于程序设计来说只是一种玩票性质。 后来也进过实验室,玩过单片机,还...
  • Python语言中的缩进在程序中长度统一且强制使用,只要统一即可,不一定是4个空格(尽管这是惯例) IPO模型指:Input Process Output 字符串的正向递增和反向递减序号体系:正向是从左到右,0到n-1,反向是从右到左...
  • 什么是面向对象的程序设计语言

    千次阅读 2015-08-08 21:59:31
    一种真正的面向对象程序设计语言,要符合四个条件: 抽象:有效管理一个问题的负责性,做法是划分出于该问题相关的一组对象。 封装:将一个抽象的内部实现隐藏在特定的对象之内。 多态:提供相同方法的多种操作实...
  • 我们常常把机器语言称为第一代程序设计语言,把汇编语言称为第二代程序设计语言,把高级语言称为第三代程序设计语言,把最新的程序设计语言称为第四代语言。1.1.1 机器语言 机器语言是计算机能...
  • 解释型/编译型 ...解释型语言程序不需要编译,程序在运行时才翻译成机器语言,每执 行一次都要翻译一次。 传统来讲效率低于编译型语言,但随着解释器的优化,非必然。 编译型语言写的程序执行之前,需...
  • 程序设计语言基本概念

    千次阅读 2012-09-10 08:46:45
    在计算机中,程序设计语言可划分为低级语言和高级语言两大类,与高级语言相比,用低级语言开发的程序,其运行效率高,但开发效率低。与程序设计相关的基本概念如下。 (1)低级语言:又称面向机器语言,它是特定的...
  • 汇编语言(assembly language),产生于20世纪50年代,是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符(Mnemonics)代替机器指令的操作码,用地址...
  • 许多初学者都会对这三个概念区分不清,应该说这三个概念是完全不同的,不能混为一谈。...首先说程序设计语言,它同人类的自然语言一样也是一个语言,并且它是自然语言的一个子集。大家都知道自然
  • 程序设计语言基本概念语 与经典真题

    千次阅读 热门讨论 2016-04-30 14:49:04
    在计算机中,程序设计语言可划分为低级语言和高级语言两大类,与高级语言相比,用低级语言开发的程序,其运行效率高,但开发效率低。与程序设计相关的基本概念如下。 (1)低级语言:又称面向机器语言,它是特定的...
  • 前言:该系统作为本科毕业设计,可能还有很多的不足。只是当时做这个系统的时候,由于需要使用java语言作为后端实现与微信小程序界面数据交互,看遍网上很多的案例基本后台都是php语言用于编写接口,几乎没找到过...
  • python语言程序设计(梁勇)

    万次阅读 2019-05-03 21:56:47
    第二章 基本程序设计 第三章 数学函数、字符串和对象 第四章 选择 第五章 循环 第六章 函数 第七章 对象和类 第八章 更多字符串和方法 第九章 使用 Tkinter 进行 GUI程序设计 第十章 列表 第十一章 多维...
  • 逻辑程序设计语言Prolog

    万次阅读 多人点赞 2017-06-23 10:16:23
    Prolog(PROgramming in LOGic的缩写)语言是一种基于 Horn 子句的逻辑型程序设计语言,也是一种陈述性语言。 Prolog 与人工智能的知识表示、自动推理、图搜索、产生式系统和专家(知识)系统有着天然的联系,很适合...
  • Java基础知识面试题(2020最新版)

    万次阅读 多人点赞 2020-02-19 12:11:27
    原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的...
  • 程序设计语言是一种人类用来和计算机沟通的语言,也就是用来指挥计算机进行计算或运行的指令集合。就如同汉语、英语、日语等语言一样,无论哪一种语言都有词汇与语法。程序设计语言是一行行的程序语句(statement)...
  • MinGW -将GNU开发工具移植到Win32平台下的计划 Cygwin - 在Windows上运行GNU... 在编码阶段我们使用程序设计语言,根据特定的文法利用程序设计语言来编码。就像是根据英语的语法用英语语言来写文章。当然一种语言
  • 把客观事物封装成抽象的类,隐藏对象的属性和实现细节,仅对外公开访问方法,控制在程序中属性的读和写的访问级别 隐藏信息和实现细节 类内部的结构可以自由修改 可以对成员进行更精确的控制(权限修饰符) ...
  • Java语言程序设计(基础篇)第十版 第一章习题答案 1.1什么是硬件和软件? 计算机是一种存储和处理数据的电子设备。 计算机包括硬件和软件。 一般来说,硬件是计算机可见的物理方面,而软件是控制硬件并使其工作的...
  • 程序设计语言的分类

    千次阅读 2012-06-14 17:21:03
    机器语言和汇编语言,宏汇编虽然抽象层次逐渐提高仍属低级语言的汇编语言(如8086汇编,68000汇编)。  (2)高级语言 独立于机器,用语言提供的语义概念和支持的范型编程。如命令式(Pascal,C,Ada)、函数式(LISP,ML...
  • JavaScript编程入门

    万人学习 2016-12-31 20:27:13
    JavaScript是现在网页开发中使用多的脚本语言,并且随着技术的发展,JavaScript也可以在服务器端进行交互式的代码开发,本课程主要是为刚刚接触JavaScript的读者准备,详细的讲解了JavaScript的基本语法,以及事件的...
  • 致 Python 初学者

    万次阅读 多人点赞 2019-11-10 00:03:26
    我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年...
  • web开发基本常用语言

    千次阅读 2018-12-29 19:34:47
    做Web开发,Web框架一定要熟悉,框架是Web架构开发中必不可少的工具,不仅可以提高开发效率,还能让开发项目更成熟,并且可以提升代码的可再用性,Web框架开发离不开相应的开发语言,以下是常用的Web架构开发语言: ...
  • Java语言程序设计基础篇chp1复习题

    千次阅读 2018-03-09 11:07:33
    第1章 计算机、程序和Java概述 1.1引言 1.2什么是计算机 1.1 什么是硬件和软件? 硬件是现实生活中运行的物理设备;软件是程序员开发,包括程序,数据和文档,操控硬件的运行. 1.2 列举计算机的5个主要硬件组件...
  • python语言程序设计基础课后习题答案

    万次阅读 多人点赞 2019-06-21 18:36:39
    实现isnum()函数,参数为一个字符串,如果字符串属于整数,浮点数,或者复数的表示,则返回True,否则False def isnum(string): try: if isinstance(eval(string),int) or isinstance(eval(string),float) or ...
  • JAVA语言程序设计(一)04747

    千次阅读 2019-12-24 15:02:16
    字符串属于引用类型 任何数据类型跟字符串相加都会变成字符串 优先级???小括号优先级最大,小括号里也可以无限套用小括号。 对应的结果自行查找。 自增自减运算符:++、– 基本含义:让一个变量涨...
  • 汇编语言程序设计

    千次阅读 2021-06-13 10:24:19
    汇编语言程序设计汇编语言源程序汇编语言源程序的结构表达式伪指令格式操作数重复操作符段定义伪指令设定段寄存器伪指令 汇编语言源程序 汇编语言源程序的结构 一个完整的源程序通常由若干逻辑段组成,包括数据段、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 269,651
精华内容 107,860
关键字:

属于程序设计语言的是