Java经典试题及答案

Java经典试题及答案
Java经典试题及答案

Java经典试题及答案

第一,谈谈final, finally, finalize的区别。

final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。

finally—再异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的 catch 子句就会执行,然后控制就会进入 finally 块(如果有的话)。

finalize—方法名。Java 技术允许使用 finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在 Object 类中定义的,因此所有的类都继承了它。子类覆盖 finalize() 方法以整理系统资源或者执行其他清理工作。finalize() 方法是在垃圾收集器删除对象之前对这个对象调用的。

第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?

匿名的内部类是没有名字的内部类。不能extends(继承) 其它类,但一个内部类可以作为一个接口,由另一个内部类实现。

第三,Static Nested Class 和 Inner Class的不同,说得越多越好(面试题有的很笼统)。

Nested Class (一般是C++的说法),Inner Class (一般是JAVA的说法)。Java内部类与C++嵌套类最大的不同就在于是否有指向外部的引用上。具体可见http:

//https://www.360docs.net/doc/1d17348134.html,/articles/services/view.asp?id=704&page=1

注:静态内部类(Inner Class)意味着1创建一个static内部类的对象,不需要一个外部类对象,2不能从一个static内部类的一个对象访问一个外部类对象

第四,&和&&的区别。

&是位运算符。&&是布尔逻辑运算符。

第五,HashMap和Hashtable的区别。

都属于Map接口的类,实现了将惟一键映射到特定的值上。

HashMap 类没有分类或者排序。它允许一个 null 键和多个 null 值。

Hashtable 类似于 HashMap,但是不允许 null 键和 null 值。它也比 HashMap 慢,因为它是同步的。

第六,Collection 和 Collections的区别。

Collections是个java.util下的类,它包含有各种有关集合操作的静态方法。

Collection是个java.util下的接口,它是各种集合结构的父接口。

第七,什么时候用assert。

断言是一个包含布尔表达式的语句,在执行这个语句时假定该表达式为 true。如果表达式计算为 false,那么系统会报告一个 Assertionerror。它用于调试目的:

断言可以有两种形式:

assert Expression1 ;

assert Expression1 : Expression2 ;

Expression1 应该总是产生一个布尔值。

Expression2 可以是得出一个值的任意表达式。这个值用于生成显示更多调试信息的 String 消息。

断言在默认情况下是禁用的。要在编译时启用断言,需要使用 source 1.4 标记:

javac -source 1.4 Test.java

要在运行时启用断言,可使用 -enableassertions 或者 -ea 标记。

要在运行时选择禁用断言,可使用 -da 或者 -disableassertions 标记。

要系统类中启用断言,可使用 -esa 或者 -dsa 标记。还可以在包的基础上启用或者禁用断言。

可以在预计正常情况下不会到达的任何位置上放置断言。断言可以用于验证传递给私有方法的参数。不过,断言不应该用于验证传递给公有方法的参数,因为不管是否启用了断言,公有方法都必须检查其参数。不过,既可以在公有方法中,也可以在非公有方法中利用断言测试后置条件。另外,断言不应该以任何方式改变程序的状态。

第八,GC是什么? 为什么要有GC? (基础)。

GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一:

第九,String s = new String("xyz");创建了几个String Object?

两个对象,一个是“xyx”,一个是指向“xyx”的引用对象s。

第十,Math.round(11.5)等於多少? Math.round(-11.5)等於多少?

Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;

第十一,short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?

short s1 = 1; s1 = s1 + 1;有错,s1是short型,s1+1是int型,不能显式转化为short型。可修改为s1 =(short)(s1 + 1) 。short s1 = 1; s1 += 1正确。

第十二,sleep() 和 wait() 有什么区别? 搞线程的最爱

sleep()方法是使线程停止一段时间的方法。在sleep 时间间隔期满后,线程不一定立即恢复执行。这

是因为在那个时刻,其它线程可能正在运行而且没有被调度为放弃执行,除非(a)“醒来”的线程具有更高的优先级。

(b)正在运行的线程因为其它原因而阻塞。

wait()是线程交互时,如果线程对一个同步对象x 发出一个wait()调用,该线程会暂停执行,被调对

象进入等待状态,直到被唤醒或等待时间到。

第十三,Java有没有goto?

Goto—java中的保留字,现在没有在java中使用。

第十四,数组有没有length()这个方法? String有没有length()这个方法?

数组没有length()这个方法,有length的属性。

String有有length()这个方法。

第十五,Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?

方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父

类有相同的名称和参数,我们说该方法被重写 (Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同

的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值

的类型。

第十六,Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?

Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。equals()是判读两个Set是否相等。

equals()和==方法决定引用值是否指向同一对象equals()在类中被覆盖,为的是当两个分离的对象的

内容和类型相配的话,返回真值。

第十七,给我一个你最常见到的runtime exception。

ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFORMatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

第十八,error和exception有什么区别?

error 表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。

exception 表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。

第十九,List, Set, Map是否继承自Collection接口?

List,Set是

Map不是

第二十,abstract class和interface有什么区别?

声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。

接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

第二十一,abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized?

都不能

第二十二,接口是否可继承接口? 抽象类是否可实现(implements)接口? 抽象类是否可继承实体类(concrete class)?

接口可以继承接口。抽象类可以实现(implements)接口,抽象类是否可继承实体类,但前提是实体类必须有明确的构造函数。

第二十三,启动一个线程是用run()还是start()?

启动一个线程是调用start()方法,使线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM 调度并执行。这并不意味着线程就会立即运行。run()方法可以产生必须退出的标志来停止一个线程。

第二十四,构造器Constructor是否可被override?

构造器Constructor不能被继承,因此不能重写Overriding,但可以被重载Overloading。

第二十五,是否可以继承String类?

String类是final类故不可以继承。

第二十六,当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?

不能,一个对象的一个synchronized方法只能由一个线程访问。

第二十七,try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后?

会执行,在return前执行。

第二十八,编程题: 用最有效率的方法算出2乘以8等於几?

有C背景的程序员特别喜欢问这种问题。

第二十九,两个对象值相同(x.equals(y) == true),但却可有不同的hash code,这句话对不对?

不对,有相同的hash code。

第三十,当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?

是值传递。Java 编程语言只由值传递参数。当一个对象实例作为一个参数被传递到方法中时,参数的值就是对该对象的引用。对象的内容可以在被调用的方法中改变,但对象的引用是永远不会改变的。

第三十一,swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?

switch(expr1)中,expr1是一个整数表达式。因此传递给 switch 和 case 语句的参数应该是 int、short、 char 或者 byte。long,string 都不能作用于swtich。

第三十二,编程题: 写一个Singleton出来。

Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。

--------------------------------------------------------------

--------------------------------------------------------------

--------------------------------------------------------------

--------------------------------------------------------------

--------------------------------------------------------------

--------------------------------------------------------------

--------------------------------------------------------------

--------------------------------------------------------------

--------------------------------------------------------------

--------------------------------------------------------------

-------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- -------------------------------------------------------------- --------------------------------------------------------------

java基础笔试题(答案已整理)

Java基础试题 一:选择题(1*30=30)(题目写在答题纸上面) 1:Java 提供哪几种运算符多选( abcd )。 A)算术运算符B)位运算符 C)关系运算符D)逻辑运算符E)条件运算符 2:https://www.360docs.net/doc/1d17348134.html,ng包的()方法比较二个对象是否相等返回true.。(b) A:toString() B:equals() C:compare D:以上都不正确 3:下列对Java 的变量与函数说法正确的是多选(ace )。 A)变量是用来保存数据的B)变量是用来实现操作过程的C)函数是用来实现操作过程的D)函数是用来保存数据的E)函数的参数是数据的入口 4:已知:int[] a = new int[100];在下列给出的数组元素中,非法的是。(d) A:a[0] B:a[1] C:a[99] D:a[100] 5:在java中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数,类型或顺序各不相同,传值也可以各不相同。这种面向对象程序的特性称为。(c) A:隐藏B:覆盖C:重载D:Java不支持此特性 6:()是一组常量和抽象方法的集合。(d) A:实例B:类C:包D:接口 7:下面关于数组说法正确的是多选(abcde)。 A)一维数组实质上是相同类型变量的列表 B)创建一个数组首先定义数组变量所需的类型 C)char c[]=new char[26];可声明一个含有26 个元素的char型数组 D)当为一个多维数组的时候分配内存时,仅需要为第一指定内存,然后再分配其他维的存E)int twain[][] = new int[4][5];可声明一个二维数组 8:Java源文件和编译后的文件扩展名分别为。(b) A:.class和.java B:.java各.class C:.class和.class D:.java和.java 9:设x=5;则y=x--和y=--x的结果,使y分别为。(c) A:5,5 B:5,6 C:5,4 D:4,4 10:若x是float类变量,x=10/4;则x 的值是。(b) A:2 B:2.0 C:2,5 D:编译错误 11:.下面方法中,用于调度线程使其运行的是?多选(bc ) A. init() B. start() C. run() D. resume() E. sleep() 12.下面哪种情况能实现自动转换多选(ace )。 A)byte 型转换成int 型B)int 型转换成byte 型 C)float 型转换成double型D)double 型转换成int 型E)char型转换成int 型 13:下列那些是正确的JAVA字符串?多选(abd )。 A. "\"\"" B. "Oxzabc" C. "\"\" D. "\t\t\r\n" E. "boolean"5 14:在使用super 和this关键字时,以下描述正确的是。(a) A::在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过 B:super()和this()不一定要放在构造方法内第一行

JAVA经典算法案例

JA V A经典算法40例 【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... public class exp2{ public static void main(String args[]){ int i=0; for(i=1;i<=20;i++) System.out.println(f(i)); } public static int f(int x) { if(x==1 || x==2) return 1; else return f(x-1)+f(x-2); } } 或 public class exp2{ public static void main(String args[]){ int i=0; math mymath = new math(); for(i=1;i<=20;i++) System.out.println(mymath.f(i)); } } class math { public int f(int x) { if(x==1 || x==2) return 1; else return f(x-1)+f(x-2); } } 【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 public class exp2{ public static void main(String args[]){ int i=0; math mymath = new math(); for(i=2;i<=200;i++) if(mymath.iszhishu(i)==true) System.out.println(i); } } class math { public boolean iszhishu(int x) { for(int i=2;i<=x/2;i++) if (x % i==0 ) return false; return true; } } 【程序3】题目:打印出所有的"水仙花数",所谓"水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水

《从零开始学航拍》教学大纲

《从零开始学航拍》教学大纲 一、说明 1.课程的性质和内容 本课程是无人机应用技术专业一门应用性较强的课程。本课程的内容涵盖了无人机航拍的器材选择、操作、拍摄建议、相关法规。通过无人机,摄影师将拥有无限的视角与创造力,通过学习也让学生掌握航拍技巧,摆脱视点、高度与方位的束缚。 2.课程的任务和要求 任务:本课程主要学习无人机航拍的各种技巧,如何训练自己成为合格的无人机操作员并排到航空静态照片与视频,并了解在航拍过程中遇到哪些情况并如何处理。 教学要求: 知识要求: 无人机设备的现状;无人机使用的监管环境;无人机航拍的相关基础知识。 能力要求: 掌握无人机航拍技巧并学习如何处理各种航拍过程中出现的一些问题;无人机拍摄静态照片的设置与技巧;无人机拍摄视频的设置与技巧。 3.教学中应注意的问题 理论教学:灵活处理教学内容,删除部分实例,补充部分基础知识。教法上多采用实例分析,激励学生的学习积极性;教学手段上多使用多媒体教学,把难以表达的理论知识展示给学生,加强直观教学。 实践教学:多进行航拍实训课程练习。该课程是实验性较强的课程,要通过学生做实验,做产品才能真正领悟体会。 二、学时分配表

三、课程内容 第1章设备 什么是无人机;四轴飞行器;电池与充电器;航拍相机与云台;什么是云台;小型无人机上的大型传感器;GoPro相机;一体化航拍相机;隔震;果冻效应(Jello);平衡螺旋桨;避震器;人称主视角;模拟人称主视角;数码高清人称主视角;一体化人称主视角;地面端任务规划;静态照片vs视频;建议:买什么 第2章学习飞行 选择一台教练无人机;找到好的飞行地点;制作飞行清单;遥感勘测;熟能生巧 第3章静态航空摄影 相机设置;一般设置;一体化相机;GoPro相机;其他相机;配件;航空摄影技术;3D思维;适合的高度;垂直向下;抽象物;慢速快门;浅景深;高级技巧;延时摄影;高动态范围(HDR);摄影测量法;后期处理;未来如何 第4章航空摄像 讲故事;画面稳定:克服果冻效应;使用云台;云台模式和控制;云台速度;云台调整和校准;云台和滤光镜;相机设置;一般设置;一体化相机;DJI大疆的LOG模式;GoPro相机;航空摄像技巧;上下倾斜;跟拍镜头;无人机自拍;升高降下;轨道;高级:航拍视频直播;视频直播高清晰度多媒体接口;后期制作与分享;航空摄像的未来 第5章真实拍摄故事 特邀艺术家;胡伦罗恩火山(2015);胡伦罗恩火山(2014);火人节;瓦特纳冰川(Vatna Glacier);杰古沙龙冰湖(Jkulsárlón Glacier Lagoon);米湖(Lake Mvatn);DC-3 失事飞机巴哈马沉船;玻璃窗大桥;鲸鲨食人魔岩(Cannibal Rock);汤加(Tonga);草莓岩(Strawberry Rock);巴厘岛稻田;海神庙(Pura Tanah Lot);韩松洞(Son Doong Cave);无人机自拍后院小河;特塔马努通道(Tetamanu Pass);乘双体船去汤加;科西嘉

java基础笔试测试题与答案

Java 一章至五章考试 一. 填空题(8 分) 1. 面向对象的三大原则是( 封装),( 继承) 和( 多态).2 分 2. 如果想在对象实例化的同时就初始化成员属性,则使用( 构造函数).2 分 3. ( 实体) 方法和( 构造) 方法不能修饰为abstract ?2分 二.选择题(60 分) 1) 在Java 语言中,下列(a,d )是不满足命名规范的变量名。(选择二项) a) 姓名 b) $Name c) _instanceof d) instanceof 2) 下列Java 代码片段的输出结果是( a ) 。 char c='a'; int i=c; float f=i; byte b=(byte)c; System.out.println(c+","+i+","+f+","+b); a) 编译错误 b) a,97,97,97 c) a,97,97.0,97 d) a,97,97.0f,97 3) 下列Java 代码中,空白处的代码是(b,c )。( 选择两项) public interface Fee{ public float calLabFee(float unitPrice, float time); } public class FeeImpl implements Fee { public float calLabFee(float unitPrice, float time){ return unitPrice * time; } } public class FeeInterfaceTest { public static void main(String[] args){ ________________ Float labFee = fee.calLabFee(400.00,5); } }

java习题集及答案

JAVA语言与面向对象程序设计期末复习题 2011年上(一)单项选择题 1.对象是构成现实世界的一个独立单位,它具有自己的静态特征和( B )特征。 A. 颜色 B. 动态 C. 状态 D. 重量 2.使用JDK编译Java程序时使用的命令是(B)。 A. java B. javac C. appletviewer D. javadoc 3.在Java程序中包含主方法的类被称为主类,主方法的访问控制修饰符为(C)。 A. private B. protected C. public D. static 4.在类的定义中,若需要把一个标识符定义为常量,则使用的修饰符为(B)。 A. const B. final C. static D. class 5.在程序中声明包的语句关键字为(D)。 A. volatile B. pack C. import D. package 6.在一个方法的方法头(声明)中向调用它的上一层方法抛出异常的子句关键字为(C)。 A. catch B. throw C. throws D. finally 7.在类定义首部的语法格式中,(B)不能作为其中的修饰符。 A. public B. protectd C. extends D. abstract 8.下列哪个类不是异常类的父类?(A)。 A. Error B. Throwable C. Exception D. Object 9.下面的关键字(C)与异常处理无关。 A. throw B. throws C. import D. finally 10.在读字节文件 Employee.dat 时,使用该文件作为参数的类是(D)。 A. BufferedReader B. DataInputStream C. DataOutputStream D. FileInputStream (二)填空题 1.Java类库也称为Java API,它是Application Programming Interface的缩写,中文含义为应用程序接口 2.Java语言中用于修饰类的成员具有保护或私有访问属性的关键字分别为________和________。protected、private 3.Java语言中的方法Math.random()返回0到 1 之间的一个随机小数。 4.假定没有给一个类XXK2显式地定义任何构造函数,则利用new运算创建该类的一个对象时,自动调用的构造方法为________。XXK2() 5.假定要在一个类中访问另一个类XXK4中的静态成员abc,则此访问应表示为________。XXK4.abc 6.在方法调用中,首先需要实参表中的实参向形参表中的形参进行传递,此传递分为_______传递和_______传递两种方式。按值、引用 7.Java语言中的类的体系结构为________结构。根节点为________类。层次(树状)、Object(https://www.360docs.net/doc/1d17348134.html,ng.Object) 8.定义一个终结类需要在类首部的关键字class前使用的修饰符为final

Java经典编程题50道

【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一 对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... 【程序2】 题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 【程序3】 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如: 153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 1.程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。 【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。 (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下 的用C表示。 1.程序分析:(a>b)?a:b这是条件运算符的基本例子。 【程序6】 题目:输入两个正整数m和n,求其最大公约数和最小公倍数。 1.程序分析:利用辗除法。 【程序7】 题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。 1.程序分析:利用while语句,条件为输入的字符不为'\n'. 【程序8】 题目:求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加), 几个数相加有键盘控制。 1.程序分析:关键是计算出每一项的值。 【程序9】

项目管理实习报告范文

项目管理实习报告范文 篇一:项目管理实习报告 一、实习目的 总的来说本次实习的主要目的可以分为四块:(x)、了解了—般民用建筑施工前的准备工作和整个施工过程;(x)理论联系实际,巩固和深入理解了已学的理论知识(如测量、建筑材料、建筑学、建筑结构等),并为后续课程的学习积累感性知识和初步的认识;(x)、通过亲身参观施工实践,培养了分析问题和解决问题的独立工作能力,为将来参加工作打下基础;(x)、通过亲身观察施工现场的工作和劳动,向老师和工地工作人员学习请教,了解房屋施工的基本生产中的生产技术技能。 二、实习内容 x、看图识图:我们看图的图纸的项目为萧山恒逸金榈湾xx 号楼,架空一层为自行车库,地上六层,结构总高度xx.xx米,建筑表面积为xx.xx平方米,总体积为xx.xx米。其为结构等级二级,耐火等级二级的民用建筑物,设计使用期限xx年。图纸主要包括他的结构图,单体图,单体大详图和节能专篇及设计说明。 x、工地参观学习:本次工地实习主要参观的是宋都阳光国际位和校医院。宋都阳光国际位于城市东部杭州最具发展潜力的

区域及钱江新城二期东扩地带——江干区九堡南片区,地块北临杨公路,西接圆梦园别墅区,东为规划房产项目,南面钱塘江,沿江面视线非常好,具有极佳的一线江景资源。宋都阳光国际总体定位高端,整体设计融人文环境和自然生态于一体,通过完善的配套、便捷的交通、超前的生活理念打造一个集亲水性、园林化、生态式、标志性为一身的滨江高品质生活高尚住宅区。而校医院也是我们学校最近在建的一个新工程,由浙江省省直建筑设计院负责设计,由浙江建安实业集团股份有限公司负责施工,将在今年的xx月份左右完工。 本次参与实习的是我们大三工程管理专业的,专业知识和各方面的阅历并不丰富,所以这次的实习对我们来说更重要的是一个向别人学习的机会。在本次为期一个月的实习过程中,不仅学到许多书上没涉及到的知识,还了解了本专业以后所要工作的内容,以及我们应该注意的知识的积累和加深,这才是同学们最大的收获。实习是我们接触社会的试脚石,是我们在大学学习中不可或缺的一个环节。这十天的实习并没有浪费。我们从一个仅仅对课本有所了解到理论结合实际,对工程施工的流程有了大致的了解,对工作人员施工条件的艰苦有了深刻的体会。而去了工地也发现了许多不足。从开始,脑子中想把自己学的理论知识与现实结合起来可怎么也办不到。连基本的知识都搞混了。于是,在

抖音从零开始的12个步骤

抖音从零到赚钱的12步骤 互联网赚钱的公式是:流量=金钱,只要有了流量,变现根本不是问题 . 而抖音,现在就是一个坐拥超级庞大流量的平台 . 抖音平台的火爆,会带动各个行业、系列产品、系列服务的销量,很多行业,很多创意的产品都是被抖音带火的 . 而且客户不只是只针对本地客户,全国的粉丝都会因为你的专业、特色,远道而来享受你的产品、服务,比如餐饮、旅游景点、发型师、小吃培训、教育培训等,很多行业都可以实现全国各地用户来本地消费这就是短视频引流无法估计的用户效益和经济效益 . 运用一些小技巧,就可以引流相当大的一部分流量,有了流量,还怕做不成项目吗! 现在各大短视频平台都设有防御与惩罚机制,会对新视频和视频库进行比对,防止内容重合或雷同,如被发现视频存在盗用则无法获得推荐 .同时,盗用视频有专门举报审核机制,核实后对账号进行处罚,防止搬运工盗用视频获益 . 抖音搬砖的红利期已经过了,毕竟抖音官方也是严重鼓励实拍原创的,

谁喜欢自己的平台都是搬运的内容? 那么抖音怎么从小白开始来系统运营抖音号,接下来从12个维度来细讲怎么从零基础来运营抖音,实现引流,涨粉,赚钱,一整套抖音系统运营教程 . 这里简单列举下抖音课程主讲什么,也就是一个大纲,帮助大家了解运营抖音的框架 . 从0开始教你运营抖音号 .第一部分:抖音养号 玩抖音,最重要的一招就是“养” . 会养号,不管玩什么领域的抖音号,都很容易做到一个几十万粉丝的抖音账号 . ①学习方法 会学习,只需要学习一遍,不会学习,学 10 遍跟没学一样 ②熟悉抖音 ③抖音养号 ⑴养号步骤 ⑵养号细节 ⑶养号权重 ⑷1 分钟权限 ④抖音认证 ⑴个人号加 V 认证

Java基础笔试机试测试题(带答案)

Java基础考试题 班级:__________ 姓名:___________ 日期:_____________ 一、笔试(45题,每题2分) 1) 分析下面的Java程序段,编译运行后的输出结果是()。 public class Test { public static void changeString(StringBuffer sb) { sb.append("stringbuffer2"); } public static void main(String[] args) { StringBuffer sb = new StringBuffer("stringbuffer1"); changeString(sb); System.out.println("sb = " + sb.toString()); } } A. sb = stringbuffer2stringbuffer1 B. sb = stringbuffer1 C. sb = stringbuffer2 D. sb = stringbuffer1stringbuffer2 2) 在Java中,包有多种用途,但不包含()。 A. 将类组合成较小的单元,便于使用 B. 有助于避免命名冲突 C. 有助于提高运行效率 D. 允许在更广的范围内保护类、数据和方法 3) 在Java中,如果要在字符串类型s="java"中,得到字母'v' 出现的位置,选()语句。 A)s.matches('v'); B)s.charAt('v'); C)s.indexOf('v'); D)s.substring('v'); 4)下列代码运行后,变量c的值是()。 int a=15,b=10; double c=a/b; a) 1.5 b) 1.0 c) 1 d) 0 5)main方法如下所示,该程序的运行结果是()。 public static void main(String [] args){ int i=0; System.out.print(i++); } a) 输出0 b) 输出1 c) 编译错误d) 运行时出现异常

java简答题答案

注释:本文答案引用中华文本库. 答案中涉及各种图表均对应教材上图表. Java简答题复习题 简答题: 1、java语言有哪些特点? 简单性、面向对象、分布式、解释型、健壮、安全、与体系结构无关、可移植、高性能、多线程和动态执行。 2、java平台分为几类,它们的适用范围是什么? J2EE 为企业计算提供一个应用服务器运行和开发平台。 J2SE 为台式机和工作站提供一个开发和运行平台。 J2ME 为消费电子产品提供一个运行平台,使得java程序能在手机、机顶盒和PDA产品 上运行。 3、哪些数据类型可以充当swith语句的条件? 表达式的返回值类型必须是:byte short int char ,是基本数据类型而不是包装类。 4、Java编程规范? (1)有多个import语句时,先写java包,后写javax,最后写其他公司和自己定义的包。 (2)命名规则: 包名中的字母小写。 类名、接口名中每个单词首字母大写。

方法名、变量名第一个单词首字母小写,后面单词首字母大写。 常量中每个字母大写。 (3)适当保持缩进,便于阅读。 (4)有一定的注释量(20%--50%)。 5、构造方法和抽象? 构造方法: 具有与类相同的名称; 不含返回值; 不能在方法中用return 语句返回一个值; 当自定义了构造方法后,编译器将不再自动创建不带参数的构造方法。 抽象: 从被研究对象中舍弃个别的、非本质的或者与研究主旨无关的次要特征;抽取与研究有关的共性内容进行考察,形成对研究问题正确的、简明扼要的认识。 6、对象位于内存何处?声明能够引用对象的实质是什么? (1)对象位于堆内存中。 (2)声明能够引用对象的实质:在栈中保留了对象的地址。 7、基本数据类型和对象作为参数传递的不同? (1)基本数据类型作为参数在方法中传递的是值传递。 (2)对象是引用传递,当对象作为参数传递时,传递的是对象的地址。

JAVA算法100例_全源码

JA V A经典算法40题 【程序1】题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析:兔子的规律为数列1,1,2,3,5,8,13,21.... public class exp2{ public static void main(String args[]){ int i=0; for(i=1;i<=20;i++) System.out.println(f(i)); } public static int f(int x) { if(x==1 || x==2) return 1; else return f(x-1)+f(x-2); } } 或 public class exp2{ public static void main(String args[]){ int i=0; math mymath = new math(); for(i=1;i<=20;i++) System.out.println(mymath.f(i)); } } class math { public int f(int x) { if(x==1 || x==2) return 1; else return f(x-1)+f(x-2); } } 【程序2】题目:判断101-200之间有多少个素数,并输出所有素数。 1.程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此数不是素数,反之是素数。 public class exp2{ public static void main(String args[]){ int i=0; math mymath = new math(); for(i=2;i<=200;i++) if(mymath.iszhishu(i)==true) System.out.println(i); } } class math { public int f(int x) { if(x==1 || x==2) return 1; else return f(x-1)+f(x-2); } public boolean iszhishu(int x) { for(int i=2;i<=x/2;i++) if (x % 2==0 ) return false; return true;

建设工程项目管理规划

建设工程项目管理规划由于建设工程项目管理的特殊性、严谨性、科学性,决定了它不同于一般的项目管理工作。必须对项目进行进度控制、费用控制、质量控制、安全管理、合同管理、信息管理及组织和协调。进行一系列的规范化、程序化、科学化的管理。通过利用组织论的管理工具对管理工作提出更高的要求以达到效益最大化,最终使目标达到增值的目的。 一、进度控制 项目开工前需依据合同约定编制开、竣工时间进度网络计划图。在对各工序持续时间对计划进行分解制定月、旬进度计划和里程碑事件时间。当计算工期不能满足计划工期时,应对某项工作的时间进行压缩以达到最终合同约定竣工时间。 二、费用控制(成本控制)成本控制是关系到目标效益能否实现的关键工作。应从设计、材料采购、施工工艺、仓库管理等方面进行把控。做好材料领用单管理工作。 三、质量控制 为达到工程质量所采取的作业技术的活动成为质量控制,也就是说质量控制是为了监视质量的形成过程。质量环节所有阶段引起不合格或不满意效果的因素,以达到质量要起获取经济效益而采取的工程质量作业技术和活动。质量必须做到三个阶段:即事前控制、事中控制、事后控制。事前控制是关键。 四、安全管理 安全无小事,安全管理是工程项目管理工作的重中之重,必须建立安全生产责任制。以公司经理挂帅,项目经理是第一安全负责人的安全工作领导小组,严格执行安全技术十二项规定。安全目标“从零开始,向零奋斗” 。 五、具体实施办法 1.组建项目管理部 项目经理技术负责人采购员(材料 仓管员资料员电工 厨师门岗财务人员 职责: 项目经 ①贯彻执行国家行政部门有关法律、法规和标准,执行公司的各项管理制度。 ②经授权组建项目部,确定项目管理机构,选择招聘管理人员。对项目人员依据项目管理规定进行考核、评价、奖惩。 ③负责对施工项目过程全面管理,组织制定项目部各项管理制度。 ④严格履行和建设单位签订的合同和公司签订的“项目管理目标责任书” ,并进行阶段性目标控制,确保项目目标实现。 ⑤负责编制绩效管理规划和施工组织设计。做好新工艺、新材料、新技术的推广工作。 ⑥严格财务制度,做好成本分析和核算工作。 ⑦强化安全文明施工,及时发现和处理安全事故。 技术负责人 ①熟悉图纸、施工规范和相关技术标准,做好签证和工程量计量及工作。 ②在项目经理领导下主持编制施工组织设计和专项施工方案。对管理工作提出合理化建设性 方案。 ③负责施工测量、防线和对老兀作业的技术交底工作、参加图纸会审。 ④对施工进度、质量、安全进行把控,做好事事有计划,事事有结果,事事有检查。 ⑤完成领导交办的临时工作。 材料员(采购员) ①根据材料采购计划做好采购工作。

Java基础试题和答案解析

Java试题 1) java程序中,main方法的格式正确的是()。(选择一项) a)static void main(String[] args) b)public void main(String[] args) c)public static void main(String[]s) d)public static void main(String[] args) 2)给定java代码,如下: public byte count(byte b1,byte b2){ return______; } 要使用这段代码能够编译成功,横线处可以填入()。(选择一项) a)(byte) (b1-b2) b)(byte) b1-b2 c) b1-b2 d) (byte) b1/b2 3)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。(选择一项) a)protected b)private c)public d)friendly 4)在Java中,下列()语句不能通过编译。(选择一项) a) String s= “join”+ “was”+ “here”; b) String s= “join”+3; c) int a= 3+5 d) float f=5+5.5; 5) 在Java中下列()方法可以把JFrame的布局管理器设为FlowLayout类型(选择一项) a)jFrame.setLayout(new FlowLayout() ); b) jFrame.addLayout(new FlowLayout() ) c)jFrame.setFlowLayout() d)jFrame.addFlowLayout() 6)给定java代码如下,运行时,会产生()类型的异常。(选择一项) String s=null; s.concat(“abc”); a)ArithmeticException b)NullPointerException c)IOException d)EOFException 7) 在java中,()对象可以使用键/值的形式保存数据。(选择一项) a)ArrayList b) HashSet c) HashMap d) LinkedList

Java试题及答案

一、单项选择填空(每小题2分,共50分) 1.下列不属于main方法的修饰词的是() A.public B.void C.static D.final 2.Java源程序经过编译后的文件类型是() A.字节码文件 B.可执行文件C.目标文件D.中间文件 3.下列关于运算符的结合性说法正确的是() A.算术运算符和条件运算符都是左结合(即从左至右)算术不一定++ 的前缀和后缀不一样 B.单目运算符是左结合C.关系运算符是左结合 D.赋值运算符是左结合 4.对于同一消息,对象可以产生不同的行为,这称为类的什么特性?() A.继承性B.抽象性C.封装性D.多态性 5.下面哪个是合法的布尔值() A.”false”B.false C.0 D.f 6.下面哪个是Java语言中的关键字?() A.sizeof B.abstract C.InstanceOf D.Native 7.哪种循环在条件表达式被计算之前至少执行循环体语句一次?() A.do-while循环B.for循环C.while循环D.以上都不是 8.以下哪个选项用以确定字符串的长度?() A.size B.length C.max_value D.length() 9.下面的语句哪个是正确的?() A.char=?abc?; B.long l=0xfff; C.float f=0.23 需加上f; D.double=0.7e-3; 10.下列哪个类的声明是错误的?() A.final abstract class A B.final class A C.protected class A D.public class A 11.下面程序段的执行结果是什么?() public class Foo{ public static void main(String[] args){ try{ return;} finally{System.out.println(“Finally!”);} }} A.程序正常运行,但不输出任何结果B.程序正常运行,并输出 Finally C.编译能通过,但运行时会出现例外D.因为没有catch语句块,所 以不能通过编译 12.设a=0,b=-3,则表达式(a>=1)&&++a<=12?b:a的结果为() A.1 B.2 C.0 D.-3 13.Java语言中,下列常量中是字符型常量的为() A.?\0xFFFF?B.?\u?C.?\\?转义字符D.”ABC” 14.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用____ 个比特位。()若是字节就是2个

项目管理实习报告

项目管理实习报告 关于《项目管理实习报告》,是我们特意为大家整理,希望对大家有所帮助。 项目管理实习的进行能帮助实习生们验证自己的职业抉择。项目管理实习报告是小编为大家带来的,希望对大家有所帮助。 篇一:项目管理实习报告 一、实习目的 总的来说本次实习的主要目的可以分为四块:(1)、了解了—般民用建筑施工前的准备工作和整个施工过程;(2) 理论联系实际,巩固和深入理解了已学的理论知识(如测量、建筑材料、建筑学、建筑结构等),并为后续课程的学习积累感性知识和初步的认识;(3)、通过亲身参观施工实践,培养了分析问题和解决问题的独立工作能力,为将来参加工作打下基础;(4)、通过亲身观察施工现场的工作和劳动,向老师和工地工作人员学习请教,了解房屋施工的基本生产中的生产技术技能。 二、实习内容 1、看图识图:我们看图的图纸的项目为萧山恒逸金榈湾24号楼,架空一层为自行车库,地上六层,结构总高度18.150米,建筑表面积为3815.97平方米,总体积为8586.29米。其为结构等级二级,耐火等级二级的民用建筑物,设计使用期限50年。图纸主要包括他的结构图,单体图,单体大详图和节能专篇及设计说明。 2、工地参观学习:本次工地实习主要参观的是宋都阳光国际位和校医院。宋都阳光国际位于城市东部杭州最具发展潜力的区域及钱江新城二期东扩地带——江干区九堡南片区,地块北临杨公路,西接圆梦园别墅区,东为规划房产项目,南面钱塘江,沿江面视线非常好,具有极佳的一线江景资源。宋都阳光国际总体定位高端,整体设计融人文环境和自然生态于一体,通过完善的配套、便捷的交通、超前的生活理念打造一个集亲水性、园林化、生态式、标志性为一身的滨江高品质生活高尚住宅区。而校医院也是我们学校最近在建的一个新工程,由浙江省省直建筑设计院负责设计,由浙江建安实业集团股份有限公司负责施工,将在今年的10月份左右完工。 本次参与实习的是我们大三工程管理专业的,专业知识和各方面的阅历并不丰富,所以

从零开始学航拍教学大纲

从零开始学航拍教学大纲(总 4页) -CAL-FENGHAI.-(YICAI)-Company One1 -CAL-本页仅作为文档封面,使用请直接删除

《从零开始学航拍》教学大纲 一、说明 1.课程的性质和内容 本课程是无人机应用技术专业一门应用性较强的课程。本课程的内容涵盖了无人机航拍的器材选择、操作、拍摄建议、相关法规。通过无人机,摄影师将拥有无限的视角与创造力,通过学习也让学生掌握航拍技巧,摆脱视点、高度与方位的束缚。 2.课程的任务和要求 任务:本课程主要学习无人机航拍的各种技巧,如何训练自己成为合格的无人机操作员并排到航空静态照片与视频,并了解在航拍过程中遇到哪些情况并如何处理。 教学要求: 知识要求: 无人机设备的现状;无人机使用的监管环境;无人机航拍的相关基础知 识。 能力要求: 掌握无人机航拍技巧并学习如何处理各种航拍过程中出现的一些问题;无人机拍摄静态照片的设置与技巧;无人机拍摄视频的设置与技巧。 3.教学中应注意的问题 理论教学:灵活处理教学内容,删除部分实例,补充部分基础知识。教法上多采用实例分析,激励学生的学习积极性;教学手段上多使用多媒体教学,把难以表达的理论知识展示给学生,加强直观教学。 实践教学:多进行航拍实训课程练习。该课程是实验性较强的课程,要通过学生做实验,做产品才能真正领悟体会。 二、学时分配表

三、课程内容 第1章设备 什么是无人机;四轴飞行器;电池与充电器;航拍相机与云台;什么是云台; 小型无人机上的大型传感器;GoPro相机;一体化航拍相机;隔震;果冻效应(Jello);平衡螺旋桨;避震器;人称主视角;模拟人称主视角;数码高清人称主视角;一体化人称主视角;地面端任务规划;静态照片vs视频;建议:买什么 第2章学习飞行 选择一台教练无人机;找到好的飞行地点;制作飞行清单;遥感勘测;熟能生巧 第3章静态航空摄影 相机设置;一般设置;一体化相机;GoPro相机;其他相机;配件;航空摄影技术;3D思维;适合的高度;垂直向下;抽象物;慢速快门;浅景深;高级技巧;延时摄影;高动态范围(HDR);摄影测量法;后期处理;未来如何 第4章航空摄像 讲故事;画面稳定:克服果冻效应;使用云台;云台模式和控制;云台速度;云台调整和校准;云台和滤光镜;相机设置;一般设置;一体化相机;DJI 大疆的LOG模式;GoPro相机;航空摄像技巧;上下倾斜;跟拍镜头;无人机自拍;升高降下;轨道;高级:航拍视频直播;视频直播高清晰度多媒体接口;后期制作与分享;航空摄像的未来 第5章真实拍摄故事 特邀艺术家;胡伦罗恩火山(2015);胡伦罗恩火山(2014);火人节;瓦特纳冰川(Vatna Glacier);杰古沙龙冰湖(Jkulsárlón Glacier Lagoon);米湖(Lake Mvatn);DC-3 失事飞机巴哈马沉船;玻璃窗大

2019最新Java面试题,常见面试题及答案汇总

ava最新常见面试题+ 答案汇总 1、面试题模块汇总 面试题包括以下十九个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 。如下图所示: 可能对于初学者不需要后面的框架和JVM 模块的知识,读者朋友们可根据自己的情况,选择对应的模块进行阅读。 适宜阅读人群 需要面试的初/中/高级java 程序员 想要查漏补缺的人 想要不断完善和扩充自己java 技术栈的人 java 面试官 具体面试题 下面一起来看208 道面试题,具体的内容。 一、Java 基础 1.JDK 和JRE 有什么区别? 2.== 和equals 的区别是什么? 3.两个对象的hashCode()相同,则equals()也一定为true,对吗? 4.final 在java 中有什么作用? 5.java 中的Math.round(-1.5) 等于多少? 6.String 属于基础的数据类型吗? 7.java 中操作字符串都有哪些类?它们之间有什么区别? 8.String str="i"与String str=new String(“i”)一样吗? 9.如何将字符串反转? 10.String 类的常用方法都有那些? 11.抽象类必须要有抽象方法吗? 12.普通类和抽象类有哪些区别? 13.抽象类能使用final 修饰吗?

14.接口和抽象类有什么区别? 15.java 中IO 流分为几种? 16.BIO、NIO、AIO 有什么区别? 17.Files的常用方法都有哪些? 二、容器 18.java 容器都有哪些? 19.Collection 和Collections 有什么区别? 20.List、Set、Map 之间的区别是什么? 21.HashMap 和Hashtable 有什么区别? 22.如何决定使用HashMap 还是TreeMap? 23.说一下HashMap 的实现原理? 24.说一下HashSet 的实现原理? 25.ArrayList 和LinkedList 的区别是什么? 26.如何实现数组和List 之间的转换? 27.ArrayList 和Vector 的区别是什么? 28.Array 和ArrayList 有何区别? 29.在Queue 中poll()和remove()有什么区别? 30.哪些集合类是线程安全的? 31.迭代器Iterator 是什么? 32.Iterator 怎么使用?有什么特点? 33.Iterator 和ListIterator 有什么区别? 34.怎么确保一个集合不能被修改?

java简答题答案

第一章: 1.面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。 2.JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件和许多Java基础类,例如,IO类、GUI控件类、网络类等。JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java 程序,那么,你的计算机上必须且只需安装JRE。 JDK(JavaDevelopment Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的。初学者学习和使用Java语言时,首先必须下载和安装JDK。JDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了。 3.path:path环境变量是系统环境变量中的一种,它用于保存一系列可执行文件的路径,每个路径之间以分号分隔。当在命令行窗口运行一个可执行文件时,操作系统首先会在当前目录下查找是否存在该文件,如果不存在会继续在path环境变量中定义的路径下去寻找这个文件,如果仍未找到,系统会报错。 classpath:classpath环境变量也是系统环境变量中的一种,它用于保存一系列类(.class)文件的路径。当Java虚拟机需要运行一个类时,会先在classpath环境变量中所定义的路径下去寻找所需的class文件。如果classpath的路径最后有分号,则在classpath中找不到时,再到当前路径查找;如果最后无分号,则只在classpath设置的路径中查找。 4.JVM是JavaVirtual Machine的缩写,全称是Java虚拟机。Java语言的一个非常重要的特性就是跨平台性,而Java虚拟机是实现这一特性的关键。不同的操作系统需要使用不同版本的虚拟机,这种方式使得Java语言能够“一次编写,到处运行”。Java 语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。 第二章: 1.Java语言的八种基本数据类型有:byte字节型,占一个字节。short短整型,占两个字节。int整型,占4个字节。long长整型,占8个字节。float单精度浮点型,占4个字节。double双精度浮点型,占8个字节。char字符型,占两个字节。boolean 型,表示逻辑值,有true和false两个值,分别占一个字节。 2.如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边都会参与计算。如果使用“&&”进行连接,当“&&”左边的表达式为false时,就不会执行其右边的表达式。例如:定义int x = 2,y=0;执行输出表达式 boolean b = x0;的值时,会发生被0除的异常,因为“&”右边的表达式x/y>0的表达式执行了;而boolean b = x0;是不会出现这种异常的,因为“&&”左边的表达式x0就不会被执行。 3.方法重载指的是在一个类中可以声明多个同名的方法,而方法中参数的个数或者数据类型不一致。调用这些同名的方法时,JVM 会根据实际参数的不同绑定到不同的方法。 4.char型变量是用来存储Unicode编码的字符的,Unicode编码字符集中包含了汉字,所以,char型变量中当然可以存储汉字啦。不过,如果某个特殊的汉字没有被包含在Unicode编码字符集中,那么,这个char型变量中就不能存储这个特殊汉字。补充说明:Unicode编码占用两个字节,所以char类型的变量也是占用两个字节。 5.break语句:在switch条件语句和循环语句中都可以使用break语句。当它出现在switch条件语句中时,作用是终止某个case 并跳出switch结构。当它出现在循环语句中,作用是跳出循环语句,执行后面的代码。 continue语句:continue语句用在循环语句中,它的作用是终止本次循环,执行下一次循环。 return语句:return语句可以用于从当前的方法中退出,返回到该调用的方法的语句处,继续执行。return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致。 第三章: 1.构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。而普通方法只有在使用的时候才会被调用。在定义构造方法时要求方法名与类名相同、在方法名的前面没有返回值类型的声明、在方法中不能使用return语句返回一个值。 2.单例模式可以保证在整个程序运行期间针对该类只存在一个实例对象。 3.Java语言中一个显著的特点就是引入了垃圾回收机制,使得Java程序员在编写程序的时候不再需要考虑内存管理。垃圾回收可以有效的防止内存泄露,有效地利用可以使用的内存。垃圾回收器通常是作为一个单独的低级别的线程运行,不可预知的情况下对内存堆中已经死亡的或者长时间没有使用的对象进行清除和回收,程序员不能实时的调用垃圾回收器对某个对象或所有对象进行垃圾回收。 4.在Java中共有四种代码块,它们分别是静态代码块、构造代码块、普通代码块和同步代码块。 静态代码块:在Java类中,使用一对大括号包围起来的若干行代码被称为一个代码块,用static关键字修饰的代码块称为静态代码块。当类被加载时,静态代码块会执行,由于类只加载一次,因此静态代码块只执行一次。在程序中,通常会使用静态代码块来对类的成员变量进行初始化。 构造代码块:直接在类中定义的没有加static关键字的代码块称为构造代码块。构造代码块在每次创建对象时都会执行。 普通代码块:在方法或语句中出现的代码块就称为普通代码块。普通代码块和一般的语句执行顺序由他们在代码中出现的次序决定,即“先出现先执行”。 同步代码块:Java对于多线程的安全问题提供了专业的解决方式,就是同步代码块。 synchronized(对象)//这个对象可以为任意对象 { 需要被同步的代码 } 对象如同锁,持有锁的线程可以在同步中执行,没持有锁的线程即使获取CPU的执行权,也进不去。 第四章: 1.在继承关系中,子类的方法与父类的某一方法具有相同的方法名、返回类型和参数列表,则称子类的该方法重写(覆盖)父类的方法。 2.多态意味着一个对象有着多种形态,可以在特定的情况下,表现不同的状态,从而对应着不同的属性和方法。简单的说,多态就是使用父类类型的变量引用子类对象,根据被引用子类对象的特性,程序会得到不同的运行效果。 3.在Java中,使用abstract关键字修饰的类称之为抽象类。抽象类是不能被实例化的,通常需要写一个子类来继承抽象类,同时实例化子类来获得该类的对象。抽象类通常用于表示一种抽象的概念。 接口可以说是一种特殊的抽象类,接口中只能定义常量和抽象方法。由于接口的特殊性,在定义时需要使用interface关键字。 4.方法重写(Overriding)和方法重载(Overloading)是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。 如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。

相关文档
最新文档