第一周周记(20180903)

一、初识Java
1.软件、程序与计算机语言的关系
软件: 一系列按照特定顺序组织的计算机数据和指令的集合(软件=程序+数据)
程序: 完成指定功能的一条指令

计算机语言: 用于人与计算机之间通讯的语言, 由一段0和1的二进制代码所组成的语言

机器语言 :是直接由电脑CPU进行执行
优点:直接执行,速度快,资源占用少
缺点:可读性、可移植性差,编程繁杂

汇编语言(符号语言):
操作:寄存器BX的内容送到AX中
优点:目标代码简短,占用内存少,执行 速度快,能访问、控制各种硬件设备
缺点:和机器语言一样是低级语言,难学,难写,难记忆

高级语言:
结构化:在数值、科学和工程计算领域发挥着重要作用
面向对象:在C语言的基础上开发的一种面向对象编程语言

程序设计
分析问题:确定问题是什么,软件需求是什么
确定数据结构和算法:确定存放数据的数据结构是什么?解决问题的方法和步骤又是什么?
算法(数值运算和非数值运算):一个算法,就是一个有穷规则的集合,其中规定了一个解决某一特定类型的问题的运算序列,泛指解决某一问题的方法和步骤
算法的表示:流程图

编制程序:用代码实现
①翻译器:
逐行翻译,类似于同声传译
②编译器:
将整个程序转化为二进制代码

调试问题:一步一步解决程序错误,直至获得预期结果
常见错误:开发错误(语法,逻辑),运行时错误

5.程序翻译的方式有哪几种,有什么区别?
编译: 编译执行是指把代码先编译成机器码。然后按顺序运行,如果编译中有任何异常,都无法继续运行。java的编译就是把java转换成class
解释: 解释执行则是运行到哪一行代码就执行哪一行代码,更灵活

6.Java什么类型的计算机语言?(编译?or解释?)
JAVA语言是一种半编译半解释型语言,同时具备编译特性和解释特性

7.什么是字节码?在Java中有什么作用?
字节码(Byte-code)是一种包含执行程序,由一序列 op 代码/数据对组成的二进制文件,是一种中间码

8.Java代码的执行流程
java编译生成的字节码, 虚拟机将java字节代码转换对应操作系统

9.Java平台分为哪几种版本
ava平台即由Java编程语言所撰写的软件赖以运行的平台,是Java软件和电脑系统的中介,最初被设计用在 Applet 等桌面端程序,不过后来逐渐转移到服务端的运用。

10.Java语言有哪些特点?分别是什么?
简单性,面向对象,健壮性,分布性,可移植,多线程,动态,结构中立,高性能,解释性,平台无关性

11.Java虚拟机和JavaAPI的作用

12.什么是JIT,其作用是什么?
即时编译器(just in time)为Java的跨平台特性提供了支持

13.Java程序的基本构造单元是什么?
java程序以类为基本模块,是面向对象的编程语言

14.Java代码中main方法如何书写?
public static void main(String[] args)

二、Java语法基础
1.Java的注释方式有哪几种?如何书写?
在Java中给代码添加注释的方法有三种技术,分别是:
一,单行注释:用两个正斜线“//”注释掉斜线后的同行文本。
二,多行注释:“/”和“/”符号用于多行代码的注释。用“/”打开注释,“/”关闭注释。所有在二者之间的文本都会被注释掉。
三,JavaDoc注释:“/*”和“/” 是一对特殊类型的注释符号,用于与javadoc工具一起生成包含注释的HTML文件。

2.什么是关键字与标识符?
关键字:每门编程语言都有一些保留的单词,用于定义该门语言,这些单词对编译器有特殊的含义,并且不能用作为标识符。
标识符:标识符是在Java代码中我们自己选用的单词。

3.Java中的const、goto关键字有什么作用?
goto: 可以实现程序的跳转,但是跳转却没有任何限制,可以随意的进行,从而打破了正常的程序流程。如果程序中多处使用goto,不仅降低程序的可读性,也会对程序的维护与更新造成影响。
因此,为了避免上述情况,Java语言取消了goto的使用,取而代之的是使用循环标签。但是,为哦了避免程序员自行使用goto带来同样的混乱性,Java语言仍将goto定义为一个关键字,用来限制程序员将goto作为一个标识符来使用,由于是一个从不使用的关键字,故也称为“保留字”。
const: const的意思是不变的,它是拿来修饰变量的修饰词。被它修饰的变量就会变成了常量,不能再修改。

4.Java中有哪些保留字?
在Java中,有三个保留字:true、false和null。

5.回顾标识符的命名规则,并且注意Java类名不区分大小写
一,标识符不能是关键字或true、false、null。
二,标识符可以包含字母、数字0-9、下划线(_)或美元符号( 线 )。
四,标识符是区别大小写的,并且没有规定最大长度。

6.Java共有多少种数据类型?哪些是基本数据类型,哪些是引用数据类型?

7.回顾Java基本数据类型与String引用类型的变量定义与使用。
一,Java语言的基本类型根据存储的数据的不同,又分为整型、浮点型、字符型、布尔型四大类。
1)整型
在八种基本类型中,有四种是整数类型,根据其占用内存空间大小和取值范围分为:byte、short、int和long。这四种类型都是有符号的,这意味着它们既可以存储正数,又可以存储负数。
2)浮点型
基本类型中的float和double可以用于存储浮点数字。二者之间的不同之处在于所占内存空间的大小:float类型占32位,而double类型是float的两倍大小。浮点值使用IEEE 754标准格式存储。
3)布尔型
Java中boolean数据类型用来表示布尔值,它适用于逻辑运算,一般用于程序流程控制。boolean类型的变量可以是true或false。true和false都是Java中的特殊字面量。
4)字符型
char数据类型表示Java中的字符。char类型的数据所占内存空间大小为16位。char类型数据可以被看作是整数值,也就是说我们可以使用char类型数据执行算术运算和大小比较运算。

二,Java语言中,除了基本类型外的变量类型都称之为引用类型。引用类型与基本类型不同之处在于:引用不包含它所指向的对象的实际数据,而是指向内存中对象所在的位置。

8.回顾Java基本数据类型中的自转与强转规则(注意boolean)。
自动类型提升规则:
一,所有的byte型、short型和char型将被提升到int型;
二,如果其中有一个操作数是long型,那么计算结果就是long型;
三,如果其中有一个操作数是float型,那么计算结果就是float型;
四,如果其中有一个操作数是double型,那么计算结果就是double型

自动类型提升规则:
加上强制转换符,可能会造成丢失精度或者溢出,使用时需要多加留心,boolean 类型不能转换为其他数据类型

9.Java中如何定义常量?使用了哪些关键字?
Java的常量名用字符串表示,区分为不同的数据类型
Java常量命名规则:final 数据类型 常量名 = 常量值;

10.如何在Java中输入?
通过控制台输入数据,需要使用Scanner对象来操作。

11.Java中字符串如何进行拼接?
1. 加号 “+”

  1. String contact() 方法

  2. StringUtils.join() 方法

  3. StringBuffer append() 方法

5.StringBuilder append() 方法

三、流程控制
程序流程控制
三种基本技术可以改变程序的控制流程
1.调用方法。调用方法将导致控制流程离开当前方法,转移到被调用的方法
2.选择。Java中有两种做出选择的机制:if/else语句和switch语句
3.循环。Java中有三种循 语句:for循环、while循环、do/while循环。

布尔逻辑
布尔逻辑指将两到多个布尔表达式组合为单个布尔表达式
1.异或。如果一个组合表达式中有一个部分为真,而另一个部分为假,那么组合表达式就为真。同时为真,或者同时为假,都是假
2.或。只要一个组合表达式中有一个部分为真,组合表达式就会为真。
3.非。对一个布尔表达式取反。
4.和。只有在组合表达式的每个部分都为真的时,组合表达式才会为真。

布尔运算符
按位与:
1. 表达式两边的代码都会执行
2.是一种计算方式,两测可以放置数值,也可以放字符,也可以放置能够得到数值的计算表达式,还可以放置布尔表达式
逻辑与:
1.逻辑与两测的表达式,必须是布尔表达式
2.逻辑和,又被称为“短路或”, 当第一个表达式为false时, 第二个表达式将不会执行

逻辑或:
1.一个为真就为真
1.如果一旦参与,++或–在变量后面的话,变量的用法是:先用,在自增自减,反之,参与计算但是在变量后面的话,变量的用法是:先自增自减,再用
2.i++, i–, ++i, –i这种增量表达式,不参与到”其他表达式“的情况下,就是直接操作(自增,自减)
按位或:

异或:
1.异或运算符,两侧还是可以是数值
2.一个为真,一个为假

非:
1.按位非:按位非不能放布尔表达式
2.逻辑非

循环语句
先验循环:
1.While循环
while(布尔表达式){
循环体
}
2.For循环
for(表达式1;表达式2;表达式3){
循环体
}

后验循环:do-while循环
do{
循环体
}while(布尔表达式);

选择语句

一.If语句
1.单分支if语句
If(条件表达式){
语句块
}
首先执行条件表达式,如果表达式结果为真,则执行语句块内容,否则,不执行语句块内容,执行if语句块之外的第一条语句

2.双分支if语句
If(条件表达式){
语句块1
}else{
语句块2
}

如果if条件表达式为真,则执行语句块1,否则,执行语句块2

3.多分支if语句
If(条件表达式1){语句块1}
else if(条件表达式2){语句块2}
else if(条件表达式3){语句块3}
……
else if(条件表达式m-1){语句块m-1}
else{语句块m}

首先执行条件表达1,如果表达式1结果为真,执行语句块1,否则执行条件表达式2,如果表达式2结果为真,执行语句块2;以此类推,如果所有的条件表达式,都不成立,那么执行语句块m
二.If/else 语句
一个if语句后可以跟上一个可选的else语句,用于在布尔表达式为false时执行(一个else只能跟随一个相关的if。else语句不能单独出现。)
if(布尔表达式) {
//当布尔表达式为true时执行
}

三.Switch语句
1.能作为switch—case中的变量值得取值范围:必须<= 4个字节
2.能够作为变量的类型有:char,byte,short, int(jdl1.7以后,还允许string作为变量类型)
子主题 4switch(变量){
case 值 :
//语句
break; //optional
case 值 :
//语句
break; //可选
//可以有很多case语句
default : //可选
//语句
}

跳转语句
1.break语句:break关键字可以用于任何循环控制结构,从而使循环立即终止。当执行流程遇到break语句时,不管循环计算器或者布尔表达式的值是什么,控制流程都会跳到循环后的下一条语句

2.Continue语句:continue关键字可以用在任何循环控制结构中,它将导致循环立即跳到循环的下一个迭代中。(在for循环中,continue关键字将导致控制流程立即跳到更新语句; 在while或do/while循环中,控制流程立即跳到布尔表达式。)

猜你喜欢

转载自blog.csdn.net/Lsy_Coder/article/details/82352637
今日推荐