java百战1573答案1详解_第1页
java百战1573答案1详解_第2页
java百战1573答案1详解_第3页
java百战1573答案1详解_第4页
java百战1573答案1详解_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章初始 j ava1、学习编程的目的是掌握一门技术,并且不辜负大好时光。报培训班并且看好的视频,加上好的执行力。2、职业规划就是,先学习基本的编程知识,初级程序员,高级程序员,项目经理,架构师。3、需要理解底层内存的运行过程,每一个步骤都要清晰如水,需要能默写出来,出口成章,下笔如有神。4、我们的理念是让成功只需要努力,不需要运气。我们的定位是把小白培养成CTO的黄埔军校。5、一、采用电子管的第一代计算机(19461959 年)6、第一代计算机的内部元件使用的是电子管。第一代计算机主要用于科学研究和工程计算。7、二、采用晶体管的第二代计算机(19601964 年)8、第二代计算机的内部元件

2、使用的是晶体管,晶体管比电子管小得多,处理更迅速、更可靠。第二代计算机主要用于商业、大学教学和政府机关。9、三、采用集成电路的第三代计算机(19651970 年)10、第 三 代 计 算 机 使 用 的 是 集 成 电 路 , 集 成 电 路( IntegratedCircuit , 简称 r ) 是做在晶片上的一个完整的电子电路,这个晶片比手指甲还小,却包含了几千个晶体管元件。第三代计算机的特点是体积更小、价格更低、可靠性更高、计算速度更快。第三代计算机的代表是IBM 公司花了50 亿美元开发的 IBM360 系列。11、四、 采用超大规模集成电路的第四代计算机( 1971 年至今)12、第

3、四代计算机使用的元件依然是集成电路,不过,这种集成电路已经大大改善,它包含着几十万到上百万个晶体管,人们称之为大规模集成电路和超大规模集成电路。 1975年,美国1BM公司推由了个人计算机PC PersonalComputer ),从此,人们对计算机不再陌生,计算机开始深入到人类生活的各个方面。13、从 20 世纪 80 年代开始,发达国家开始研制第五代计算机,研制的目标是能够打破以往计算机固有的体系结构,使计算机能够具有像人一样的思维、推理的判断能力,向智能化发展,实现计算机运行接近人的思考方式的目标Java 核心优势是跨平台开源。Java 的三个版本是java5.0java7.0java6

4、.0 ;Java 是 Sun 公司发明的, Sun 公司是斯坦福大学的旗下的分支, Sun 公司被甲骨文公司 71 亿美金收购。java 的跨平台是有java 虚拟机实现的,也就是 jvm 。Java 的核心机制动态绑定多态,迟绑定。 Java 的虚拟机可以将 java 程序编译成每个系统自身可以识别的语言,从而完成跨平台。java 语言是编译型的语言。Jdk:java 开发程序包。 Java 开发环境Jvmjava 虚拟机,Jrejava 的类包Jdk 包括 jre 正确17、DOS命令行的常用命令 dir查找当前目录下所有的文件cd 全盘查找指定目录18、DOST自动补全命令的按键是alt

5、+/19、DOST重复之前那个按键是向上的箭头,配置java_home是为了让dos 编译 java_home 下的目录下的 java 文件。Publicclass 后面的类名必须和文件名称一致,并且只能有一个public 类。tab 和 shift+tab 可以完成成对编程和缩进。22、“ hi ” ); 不能被执行,因为没有类和 main 方法。23、会一个 java 文件会生成多个class 文件,并且java 虚拟机会自动编译。24、注释可以让代码更清晰,明了,并且易于都懂,维护。注释的类型有 /*/*/25、多行注释,不能嵌套使用。26 、 package zuoqiu;import

6、importimportimportpublicclassBallGame extends FrameImage ball=Toolkit.getDefaultToolkit().getImage( images/ball.png);Image desk =Toolkit.getDefaultToolkit().getImage( images/desk.jpg);double x=100;double y =100;double degree =3.14/3;g)System. out .println(窗口被化了一次!);g.drawImage(desk ,0,0, null );g.dr

7、awImage(ball ,( int ) x,( int ) y, null );x=x+10*Math.cos (degree );y=y+10*Math.sin (degree );publicvoid paint(Graphicsif ( y480-30-40) degree =- degree ;if ( x856-30-40)degree =3.14- degree ;if ( x20+20)degree =3.14- degree ;if ( y?boolean 型在上一章的逻辑运算符中, 我们就已经看到过了取值为 true 和 false 的变量,这种变量称为 boolean

8、型变量。 ?2?char 型?char 型是用来表示字母的,它仅能表示一个单一的字母。通常 char 型常量必须使用单引号括起来,以与数字区分开来。下面就是一个char?型变量的实例: ?char?letter= a ;?char 型在 Java 语言中并不是很常用,因为如果要存储字符的话,一般使用扩展的数据类型 string.?3?整型 ?在 Java 语言中, 提供了多种整型数据类型: byte 、short 、 int 、 long 。它们都是定义了一个整数,唯一的区别就是它们能够表示数据的范?围。能够表示数据的范围越大,占用的内存空间也就越大,因此,在程序设计中应该选择最合适的类型来定

9、义整数。 ?大家可以根据以下规律,记住它们所占的内存空间: ?int 是最基本的,它占用 32 位(现代计算机不就是32 位机嘛!); ?long ,长的,也就是比 int 还长,它占用 64 位; ?short ,短的,也就是比 int 还短,它占用 16位; ?byte ,字节, 8 位组成一个字节,当然byte 就只占8 位了。 ?根据它们所占用的内存空间不同,能够表示的数字范围也不同。占用内存空间越大,能够表示的数字范围也就越广。 ?4?浮点型?前面我们学习了存储整数的变量数据类型,现在我们还看看存储小数的变量数据类型 - 浮点数。在Java 语言中有两种浮点数类型: float? 、

10、 double 。 ?其中 float 是单精度型, 占用 32 位内存空间, 而 double是双精度型,占用 64 位内存空间。 ?浮点数: ?浮点数这个名称是相对于定点数而言的,这个点就是小数点。浮点数就是指小数点可以根据需要改位置。 ?35、标识符就是各种名称,为了区分对象、类等36、标识符只能由字母数字,美元符号,下划线组成开头只能由字母美元符号下划线开头不能有数字开头。、标识符不能用汉字开头,因为java 底层是有英语写的并且它的跨平台,汉字的编码系统是 gbk 不是广泛应用 的。、 Java 中没有 goto 语句,但是 goto 也是 java 的关 键字。、整形数常常默认为i

11、nt 类型、 Float 占用 4 个字节 32 位 double 占用 8 个字节双精度 64 位、浮点常量默认是double 类型、 Byte=500 ;不对byte 表示范围是-128-127Long 类型的数字后面要加 l 或者 L、 publicclass aapublicstaticvoid main(String args )floatd1 =floatd2 =d1 +1;if ( d1 =d2)System. out .println( d1=d2 ); else System. out .println(d1!=d2);输出的结果是d1=d2;字符型变量占用一个字节 8 位,

12、 charc= a ;java 的基本数据类型中, boolean 只有两种状态,默认值为 false. 取值范围是true,false ,理论上占 1bit ,实际上:. 单个的 boolean 类型变量在编译的时候是使用的 int 类型。booleana=true;/ 这个a在JVM中占4个字节即:32位。.boolean 类型的数组时,在编译的时候是作为 bytearray来编译的所以 boolean 数组里面的每一个元件占一个字节,booleanb=newboolean10;/ 数组时,每一个boolean 在JVM中占一个字节。理由:1) JAVA规范中没有定义boolean类型的大

13、小。2)但是:在JVM规范第2版中讲得十分清楚。我上边的结论就是从它当中取出来的。根据:(JVM规范第2版Instead,expressionsintheJavaprogramminglanguagethatoperateonbooleanvaluesarecompiledtousevaluesoftheJa vavirtualmachineintdatatype.?WhereJavaprogramminglanguagebooleanvaluesaremappedb ycompilerstovaluesofJavavirtualmachinetypeint,theco mpilersmust

14、usethesameencoding.而Javavirtualmachinetypeint,whosevaluesare32-bitsigne dtwos-complementintegers 。Arraysoftypebooleanareaccessedandmodifiedusingtheby tearrayinstructions?InSunsJDKreleases1.0and1.1,andtheJava2SDK,StandardEdition,v1.2,?booleanarraysintheJavaprogramminglang uageareencodedasJavavirtualm

15、achinebytearrays,using8 bitsperbooleanelement.48、if(b=true) 这样写不好!百度49、常量的声明用final权限修饰符50、常量的命名规则是一经赋值,不得更改如果修改,系统 报错常量名通常大写;驼峰原则就是变量名首字母小写后面每个单词的首字母大 写;当变量名或者函数名是由一个或者多个单字连接在一 起,而构成唯一的标识符时,第一个单字以小写字母开始, 第二个单字的首字母大写或者每一个单字的首字母都采用 大写字母;51、使用键盘录入,必须导包 import52、类名的命名规则首字母必须大写53、方法名,变量名用驼峰原则,常量必须全部大写;45

16、4、引用类型占用4 个字节在 32 位的系统中,在64 位的系统中就是 8 个字节;55、所谓类型提升,举例来说:inta;floatb;.c=a+b;56、在计算a+b 时,是按照 float 类型来进行的,计算机发现两个变量类型不一致时,会按照更复杂的类型的那个变量作为基准组织运算, a+b 计算时,会将a 转换成 float 型数据,按照 float 规则运算,得到 float 型的结果。57、I+与+i的区别是前者是先运算后自增,后者是先自增后运算,参与运算的 i 的值不同,影响最后的运算结果就不同;58、关系运算符中不能写1a3 只能写成 1a&a5 被执行了, 而 i+5 和 i+

17、9 都被执行了。+两边的数据类型不同的时候,其中有一个是String 类型的时候;字符串连接符其实是调用了 object 的 toString方法将其他类型的字符转换成了 string 类型的字符串并进行了连接;&与 | 应用于布尔值,得到的结果也是布尔值,这两个运算符与 &| 的运算非常类似,只是不按“短路”方式计算,即在得到计算结果之前,一定要计算两个操作数的值。int 不能自动转换为 byteshortchar 类型;65、强制类型转换可以将long 转换为 int 或者 float 类型66、自动类型转换中,容量指的的数据类型的表示范围强制类型转换中,会引起数据丢失,比如从容量大的转换

18、为容量小的,双精度转换为单精度;67、布尔类型不能自动转换为int 类型,可以利用表达式b?a:b;68、第二个写法好,第一个每次运算都是long 类型和 int类型的乘法运算,;第三章 控制语句70、三种控制结构是顺序结构、条件结构、循环结构;71、对 if 语句后面不写 就会只执行第一句;72、 Math.random() 获取任意一个随机数在0 , 1)之间;(int)Math.random()*5+15;73、如果有多个选项的时候ifelseif 语句就太笨拙, switch语句就特别容易了;例如Scannersc=newScannerz(System.out);“请输入你的选项: 1

19、,2,3,4 ” );Intchoice=nextInt();switch(choice) break; break; break; break;default;break;74、 swit ch 中的表达式中的结果可以是 charbyteshortint 的常量表达式,也可以是枚举常量,也可以是字符串字面量;75、Break语句结束执行 case语句;76、不是必须的。switchcase 语句是一个条件选择语句,找到相同的case值做为入口,执行后面的程序;若所有的case都不满足,则找default 入口;若未找到则退出整个switch语句。所以 default 只是一个备用的入口,有没

20、有都无所谓。77、因果重复78、初始化条件判断循环体迭代While 先判断条件后执行语句, dowhile 是先执行语句后判断条件,语句体至少被执行一次;“helloworld ”);For 循环语法结构比 while 循环简便; 通常用于解决循环次数固定的问题;a 没有初始化;i 超出了作用范围,只在大括号中使用;84、Break是跳由循环体,结束循环,continue是跳过背刺循环,继续下一个循环;85、语句块中的变量外部不能使用,外面的变量语句块中可以使用;86、可以有返回值,也可以没有返回值,用void 关键字;87、有返回值的方法定义,必须写 return 语句用于结束方法,么有返回

21、值就不写,;88、 Java 中参数传递的是值传递;89、方法的定义中,形式参数是方法名后面的括号中变量,实际参数是具体的值,实际参数赋给形式参数;90、定义形参时必须写变量类型;91、必须比配;92、方法的重载是针对类的,类的同名方法,方法的参数不 同,或者参数个数,参数类型不同的同名称方法叫做方法的 重载;传递不同的参数,实现相同的效果;93、什么是方法的重载,有什么作用?方法的重载是子类继 承来自父类的同名方法,但是传递的参数不同,并且输生的 内容也不同的一个同名方法继承和多态都是面向对象程序设计的特点。使用继承可以在 一个父类的基础上再创建一个子类,这个子类不但拥有父类 已有的属性和方

22、法,还可以创建属于自己的属性和方法。由 于子类和父类之间的关系,从而引生了方法重写和方法重载 的问题。方法重写及方法重载在继承和多态性方面的应用中 会存在很多问题,这些概念很容易混淆,掌握重写和重载的 区别对学会使用多态的方式编写程序、提高程序的可维护性 奠定了基础。如何定义重写:在Java程序中,类的继承关系可以产生一个子类,子类继承父类,它具备了父类所有的特征,继承了父 类所有的方法和变量。子类可以定义新的特征,当子类需要修改父类的一些方法进行扩展,增大功能,程序设计者常常 把这样的一种操作方法称为重写,也叫称为覆写或覆盖。重写体现了 Java优越性,重写是建立在继承关系上,它使语言结构更加丰富。在Java中的继承中,子类既可以隐藏和访问 父类的方法,也可以覆盖继承父类的方法。在Java中覆盖继承父类的方法就是通过方法的重写来实现的。所谓方法的重写是指子类中的方法与父类中继承的方法有 完全相同的返回值类型、方法名、参数个数以及参数类型。这样,就可以实现对父类方法的覆盖。例如:下面的代码实 现了方法的重写。classPerson/ 定义父类publicvoidprint()/ 父类中的方法 父类Person的print方法!);classStudentextendsPers

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论