码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA 笔试笔记

时间:2016-07-05 10:06:23      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

1.java优缺点

优点 :纯面对对象,跨平台,提供很多内置的类库,支持web开发,有较好的健壮性和安全性
缺点 : 速度慢,跨平台不能像其他的语言一样接近操作系统,复杂

2.java与c/c++
都是面对对象语言。java是解释性语言(一次编译永久使用),c是编译型语言,java没有指针,不支持多重继承,不需要开发人员分配内存,java跨平台

3.public static void main(String【】 args)为java的入口函数,但并不是最先运行该函数。

4.java中作用域有全局变量,局部变量
public 所有的类和对象都可以访问
protected 同一包和子类可以访问
private 只有自己可以访问
default 只有同一包中可以访问

5.一个java文件可以有多个类,但只能有一个public修饰的类

6.构造函数,和类名字相同,在new的时候一起调用,完成类的初始化,可以有多个,可以没有参数,不能继承和覆盖,可以被重载,super可以调用

7.为了克服不支持多继承,用接口(抽象类的集合)

8.clone 创造一个相同类,不会影响原类

9.反射机制是java语言允许程序自我检查,也允许对内部成员进行检查,可以动态创建类的对象

10.package——(1)解决命名冲突问题(2)使得项目更加结构化,可读性强

11.通过DLL(系统动态链接库)回调函数实现指针功能

12.面对对象是将数据和方法封装在一起,作为一个相互依赖的整体,面对过程是以事件为中心,逐步执行

13.抽象 继承封装 多态

14.面对对象开发优点:效率高 鲁棒性好 可维护性强

15.继承(子类调用父类的成员变量和方法) 组合(新类里面创建原有类的对象,重复利用已有的功能)

16.重载(同类中同名方法,不同的参数)和覆盖(子类中,同名同参)——多态

17.抽象类和接口
相同点:都不能实例化 只有实现了接口或抽象类才可以实例化
不同点:接口只能定义,不能实现,抽象可以是定义与实现 接口定义的成员变量默认为public static final

18.获得父类的类名 getClass().getName()

19.this指向当前实例对象 super 可以访问弗雷德方法或成员变量

20.标识符只能有字符、数字、下划线和$组成,不能以数字开头

21.breake跳出当前循环 continue 停止当前循环 return 返回方法,使程序返回java运行系统

22.final 声明的属性不可变 方法不可覆盖 类不可被继承
finally 是trycatch后面在return前执行
finalize是垃圾回收机制调用回收对象的函数

23.assert 软件调试方法,代码的正确性检查机制

24.static 定义的变量是全局变量 定义的方法只有对象创建了才可以使用 代码块只执行一次

25.Switch(expr) expr可以是 byte short char int

26.volatile 修饰变量放到缓冲中,提高代码效率,变量值改变缓存值不变

27.instanceof 检查对象是否是一个类

28.strictfp 精确运算浮点

29.基本数据类型 byte int short long double char boolean float

30.不可变类 ,一旦创建不可修改

31.值传递传递值,引用传递是传递地址

32.数据类型转换低到高隐式转换byte《short《char《int《long《float《double
高到低要强制转换

33.round四舍五入 ceil 向上取整 floor向下取整

34.i++先赋值后运算 ++i先运算后赋值

35.char中存储一个中文用两个字符,英文只用一个

36.字符串创建是new的是不同地址的

37.“= =”比较地址 equals比较直 hashCode(没有重写hashCode方法永远都不相同)

38.String 不可变类,一旦创建不可改变
StringBuffer 可变类,安全的
StringBilder 可变类,不安全的,遇上都是字符缓冲区
StringTokenizer是字符串分割的工具类

39.数组是对象,int[] a=new int[] int[] a={1,2} ;int[] a a=new int[]{1,2}

40.length取数组长 length()取字符串长

41.检查异常Exception可以在代码中避免

42.InputStream和OutputStream一字符为单位 Reader 和writer是以字节为单位(不会用到缓存)

43java Socket用来实现不通虚拟机或不同的计算机的通信

44.非阻塞io(NIO)是通过selector channel 和buffer实现非阻塞的IO操作

45.java序列化是指在通信的时候,将对象的状态写在流里进行网络传输或保存文件。。。

46.解释执行的三步:代码装入 代码校验 和代码执行

47.GC是垃圾回收机制

48.内存泄露:不再使用的对象长时间占用内存,并且得不到释放
解决办法:实现Key类的equals和hasCode方法。

49.堆:存放运行时创建的对象
栈:存放基本类型和引用变量

50.Collections包含大量集合接口的类【list(按顺序保存) set(元素不可重复) map(保存键值对()】
LIST(LinkedList双向列表 ArrayList不同步的 Vector同步的)
Map(HashMap可空,不安全 WeakMap IdentityHahMap)*key不可重复
Collection是集合接口

51.迭代器,遍历并选择序列中的对象

JAVA 笔试笔记

标签:

原文地址:http://www.cnblogs.com/LiLiliang/p/5642291.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!