• 工作总结
  • 工作计划
  • 心得体会
  • 述职报告
  • 事迹材料
  • 申请书
  • 作文大全
  • 读后感
  • 调查报告
  • 励志歌曲
  • 请假条
  • 创先争优
  • 毕业实习
  • 财神节
  • 高中主题
  • 小学一年
  • 名人名言
  • 财务工作
  • 小说/有
  • 承揽合同
  • 寒假计划
  • 外贸信函
  • 励志电影
  • 个人写作
  • 其它相关
  • 生活常识
  • 安全稳定
  • 心情短语
  • 爱情短信
  • 工会工作
  • 小学五年
  • 金融类工
  • 搞笑短信
  • 医务工作
  • 党团工作
  • 党校学习
  • 学习体会
  • 下半年工
  • 买卖合同
  • qq空间
  • 食品广告
  • 办公室工
  • 保险合同
  • 儿童英语
  • 软件下载
  • 广告合同
  • 服装广告
  • 学生会工
  • 文明礼仪
  • 农村工作
  • 人大政协
  • 创意广告
  • 您现在的位置:六七范文网 > 服装广告 > 正文

    JAVA面试知识点(总结)

    来源:六七范文网 时间:2021-06-29 07:09:16 点击:

     JAVA 面试知识点( 总结)

     〔填表说明:在各知识点后的把握程度栏内画〝 √〞即可,把握程度分为 A、B、C 三类,其中 A 为:能够依据相关知识点完成笔试中的填空、判定、代码补全及概念简答等;B 为:能够依照程序需求运用相关知识点编写完整的程序代码;C 为:能够用语言准确、完整的表述相关知识点及该知识点的典型应用实例。每个知识点的 A、B、C 三项均可选。〕

     编号

     知识点名称

     01 classpath 的设置及作用 类文件搜索路径。

     能够设置为名目,也能够设置为.〔即当前名目〕 作用:告诉 java 虚拟机到哪去查找用户定义的类和第三方提供的类。当设置了 classpath 变量之后,JVM 会沿着 classpath 变量中指定的名目去查找要执行的类文件。classpath 变量的值能够有多个,值与值之间必须用〝;〞隔开 如何明白得 GC :

     垃圾回收机制(garbage collection)回收失去引用的内存,程序员不能强制的执行垃圾清理,然而能够建议其回收机制,一样情形下都会按照建议进行。因为程序语句不负责建立和开释内存,jvm 自动完成。涉及到一个方法 Finallize();来进行垃圾整理,在清理垃圾是整理内存,不需要我们手动完成。GC 之前执行内存整理的工作的。〔一样假如 cpu 差不多占用专门多,那么可不能去启动开释程序;假如跟建议的垃圾专门一致,然而占用内存却专门少,垃圾回收机制〕 02 path 的设置及作用 内部文件搜索路径 设置为 javac.exe 应用程序所在名目,即..\java\jdk\bin 名目 作用:当在命令行窗口中之机运行 javac.exe 应用程序时,系统第一会在当前名目(即c:\Documents and Setting\admin)下查找那个程序,然后会沿着 path 变量中设置的路径连续查找。假如 path 没有设置,会显现〝’javac’不是内部或外部命令,也不是可运行的程序或批处理文件〞错误 03 JAVA 数据类型( 包括差不多类型和引用类型) 8 种差不多数据类型:byte,short,int,long,float,double,char,boolean〔分别对应 8 种差不多数据类型包装类,finally,不可被继承。此外 String 和 StringBuffer 类也是 finally 的。〕 3 种引用数据类型:类,接口,数组 04 JAVA 差不多运算符号 1、算术运算符:+,-,*,/,%,++,-- 2、关系运算符:<,>,>=,<=,==,!= 3、逻辑运算符:&,|,&&,|| 4、位运算符:>>,<<,>>>,~,^,&,|,! 5、赋值运算符:=,+=,-=,*=,/=,%= 6、字符串连接:= 7、条件运算符:?

      a>b?x:y (也可按照单目、双目、三目分类) 05 JAVA 程序差不多操纵语句〔if……else、switch……case、while、for〕 Java 程序设计语言的程序流程操纵与 C/C++差不多相同,总共有三种执行方式:顺序结构、选择结构和循环结构。

     编号

     知识点名称

     选择语句即条件语句有两种:if…else,switch…case 循环语句:while,do…while,for〔注意 while 和 do…while 区别,for 的三个条件〕 h swtich 里支持的数据类型有那四种? byte

     short

     char

     int 以及 JDK5.0 中的枚举类型 06 数组的概念及使用 数组类型属于复合数据类型,它是由类型相同的元素组成的有序数据集合。因此数组的最要紧的特点:元素类型相同;元素有序;所有元素公用一个名称。依照组织数据的结构不同,数组能够分为一维数组、二维数组、……。

     一维数组声明:arraytype arrayName[];或 arraytype[] arrayName; 初始化分为:1、静态初始化。如:String str[ ] = {〝aaa〞,〞bbb〞,〞ccc〞};

     String[ ] str1 = {〝111〞,〞222〞,〞333〞};

     2、动态初始化。如:char[ ]

     charName = new char[5];

     注意:动态初始化必须给出长度,否那么报错:缺少数组维数。

     二维数组声明:arraytype arrayName[][];或 arraytype[][] arrayName; 初始化:1、静态初始化。2、动态初始化:能够只指定第一位的长度而不指定第二维的。

     另外,数组具有 length 属性。

     当数组是引用数据类型是,必须为每个元素实例化,否那么会显现空指针专门。

     07 方法的声明及使用 声明:修饰符 返回值类型 方法名 〔参数列表〕{方法体}; 在非静态方法中能够直截了当调用非静态方法 在非静态方法中能够直截了当调用静态方法 在静态方法中能够直截了当调用静态方法 在静态方法中调用非静态方法,那么需要通过对象调用。

     08 方法的重载 方法的重载是多态的实现手段之一,解决了命名空间问题〔在类中实现相同功能的方法〕 满足条件:1、方法名相同

     2、方法的参数类型不同或参数个数不同或参数类型顺序不同

     3、返回值类型能够相同也能够不同 09 类的定义 定义:修饰符 class 类名{

      成员变量; 方法 } 10 对象的产生与使用 Java 语言中使用关键字 new 调用构造方法来创建新对象。

     类名 对象名 =

     new 类名〔〕; 通过对象调用方法或修改属性值。

     11 匿名对象 不定义对象的引用名称,而直截了当调用方法。只能一次性使用。

     好处:节约空间〔GC〕 假如对一个对象需要进行一次调用,能够使用匿名对象。

     常用匿名对象作为一个实参传给方法调用,用完之后抛弃。

     12 实现类的封装性 面向对象的特点之一〔封装、继承、多态、抽象是面向对象的四大特点〕 封装是一种信息隐藏技术:

     编号

     知识点名称

     1、采纳接口隐藏类的实现细节 2、在类中对属性封装。因为 Java 中对属性的操作专门弱〔例如年龄的问题,能够在 set 方法中操纵〕,实现程序健壮性。

     成员变量使用 private 关键字修饰,提供 setter 和 getter 方法进行设置和返回属性值。

     13 构造方法的定义与使用 1、 构造方法定义:方法名与类名相同;无返回值类型;方法中不能使用 return 返回一个值。

     2、 构造方法在实例化对象时自动调用,要紧用来为类中属性赋值。

     3、 假如一个类的构造方法用 private 修饰,那么它不能有子类 4、 当使用 new 关键字创建对象时,会调用构造方法。

     14 对象的比较〔〝==〞、〝equals()〞〕 〝==〞是运算符。比较的是值(差不多数据类型)和引用的地址〔引用数据类型〕 Equals()是 Object 中的方法、没有复写情形下和== 一样〔用来比较两个对象的 hashCode 码〔散列码〕即地址〕、String 类复写了 object 类的 equals 方法,比较的是两个对象的内容 String 类覆写 equals,第一比较内存地址〔引用〕,假如相同,返回真;假如不同,连续比较,比较字符串的每个字符,相等返回真,不相等返回假 15 在类内部调用本类方法 静态方法中能够直截了当调用静态方法,但不能直截了当调用非静态方法,需要通过对象调用。

     非静态方法中能够直截了当调用,或使用 this 关键字调用。

     16 this 关键字的使用 用于区别成员变量和局部变量; 1、 调用本类中的方法:a、一样方法 this.方法名(实参列表) b、构造方法 this〔实参列表〕,位于构造方法首行 2、 调用本类重的属性(this.属性名) 3、 能够用来表示当前对象 4、 不能与 super 关键字同时显现在构造方法中 5、 不能用在 static 修饰的方法或代码块中 17 构造方法的重载 规那么与一样方法重载一致。〔参见 08 题〕 当采纳 new 关键字创建对象时,会自动调用构造方法,要紧用来为类中的属性初始化。

     每个类中都有一个默认的无参构造器,当在类中添加一个有参数的构造方法,那么默认的构造方法遗失。

     18 对象的引用传递 在 Java 中,参数传递分为差不多类型参数传递与对象类型〔即引用类型〕参数传递。

     差不多类型参数传递意味着当将一个实参值传递给一个方法时,假如方法修改了该参数,改变的形参,而原始的实参的值保持不变。

     引用类型变量传递将一个参数传递给一个方法后,方法接收的是一个引用变量的值,那个值为某个对象的内存地址值。引用变量的参数传递仍旧是值传递。

     19 static 的使用〔方法、属性〕 可声明成静态变量〔全局变量,相关于那个类中的所有实例化对象,只要一个对象改变了它的值,其他对象的所值都改变〕 静态方法〔不能直截了当调用非静态方法,要用对象.方法来调用;在非静态方法中能直截了当调用静态方法,用类名.方法调用〕 静态代码块(对静态成员进行初始化),同一个类中优先于主函数和构造方法执行。

     编号

     知识点名称

     (三者的关系是:静态成员声明>静态代码块>构造方法 ) 静态方法的好处:便于调用,关于 Java 虚拟机性能更好 哪些类中全是静态方法:Math,Collections, Arrays n Collection 和 和 s Collections 区别:

     Collection 是一个接口,不通过键值对来存放对象,是一一存入的,其下有专门对子接口来继承,常用的有 set,list.

     set 不能存放重复对象,list 能够;set 决定存放位置,list 能够手动。存放的方法是用 ADD〔〕;取值用 iterator 取 〔同一对象的 hashcode 相同。不同对象的 hashcode 也会相同,反例确实是:

     String s=〞abc〞

      String s1=new String(〝abc〞);

      s 与 s1 的 hashcode 一样〕 collections 是一个类,内部全是静态方法。用来处理集合对象,能够将处理好的对象存放到另一个类中 20 对象数组的使用〔静态初始化、动态初始化〕 1、 声明及静态初始化:

     Person[] ps = Person{ p1,p2,p3 };

      //p1,p2,p3 分别为 Person 的对象 2、声明及动态初始化 Person[] p;//对象数组声明 p=new 类名[3];//动态初始化 ps[0]=new Person();//分别对每个元素初始化 ps[0].name=〞zhangsan〞; ps[0].age=13; …… 21 类的继承 通过继承能够简化类的定义,扩展类的功能。

     extends

     java 只支持单继承。

     继承是〝is a〞的关系。

     子类继承父类中非 private 属性和方法。

     子类对象实例化时默认调用父类无参构造方法〔子类构造方法首行〕。

     22 子类对象的实例化过程 当采纳 new 关键字实例化子类对象时,第一会默认调用父类无参构造方法,接着调用子类构造方法。

     23 方法的覆写 作用:扩展父类方法的功能。

     1、 只有发生在子类和父类之间 2、 子类方法和父类的方法名、参数、返回值类型都必须一致。

     3、 要求子类方法的访问权限不能小于父类的访问权限。

     4、 子类实例化父类对象,子类调用父类的方法时,会默认调用子类中覆写父类的那个方法 5、 子类继承父类的方法,访问权限只能扩大不能缩小,可用 public,protected,或 default,其中 protected 和 default 的区别确实是后者必须在同一个包里。private 的使用的好处,代码隐藏,安全;对赋值的限制。假如只是在本类中使用,不想外界得到,只要写 SET 方法就能够,不写 GET 方法〔对赋值限制的表达〕。

     public , prote cted , default ,e private 的区别

     〔1〕public:是公用的,不同包也可访问 〔2〕protected;doGet()和 doPost()确实是 protected 的,是在不同包内的,但继承了不是同

     编号

     知识点名称

     一个包的方法,子类是能访问的 〔3〕default(默认的);只是在同一个包内才能够被访问。

     〔4

     private;只有在本内中才可访问 24 super 的使用 super 调用父类的属性:super.属性名; super 调用父类的方法:super.方法名〔实参列表〕; 调用父类中特定构造方法:super(实参列表); 调用父类中构造方法时,super〔〕必须放在子类构造方法的首行。this 和 super 不能同时调用构造方法。

     用 super 调用父类中的方法时,会调用子类中被覆写了的方法。假如子类中没有覆写父类中的方法,仍能用 super 调用父类中的方法 Ps:一个类的构造方法假如用 private 修饰,那么它不能有子类。

     25 this 与 super 的区别 this 用于调用本类的属性和方法,或代表当前对象。

     super 用于调用父类的属性和方法。

     两者不能同时调用构造方法。

     26 final 关键字 修饰符。能够修饰变量、方法、类。

     final 修饰的变量为常量,只能被赋值一次 final 修饰的方法不能被复写 final 修饰的类不能被继承〔构造方法不能被复写〕String,Maths 差不多上用 final 修饰的类。

     27 抽象类的使用 抽象类用 abstract 关键字修饰。抽象类仅提够一个类的部分实现。抽象类能够有实例变量,能够同时有抽象方法和具体方法,它提供一个继承的动身点,不能呢个被实例化。因此,抽象类只能用来继承。

     不能被直截了当实例化 抽象类的子类,要么是抽象类,要么实现抽象父类的所有抽象方法〔复写〕 抽象类能够有构造方法。

     28 接口的使用 接口是常量和抽象方法的集合。

     接口中不能有一般方法和变量。常量必须被赋值。

     接口能够实现多继承〔即接口能够继承一个到多个接口,但不能继承类〕 一个类能够实现多个接口 接口不能有构造方法 extends 和 implements 同时显现,extends 写在 implements 前面 抽象类能够实现接口,同时不必实现接口中的所有抽象方法。

     Ps:抽象类和接口的区别 抽象类和接口是 Java 面向对象体系当中专门重要的两个元素,在语法和使用方面都有专门多的区别,下面我就从这两个方面来回答那个问题:

     第一, 接口和抽象类在语法上的区别要紧表达在以下的几个方面:

     a) 一个类能够实现多个接口,而除了 Object 之外,一个类只能继承一个父类; b) 接口当中所有的方法差不多上抽象方法,同时默认为 public 权限,而抽象类当中能够有抽象方法,也能够没有抽象方法

     编号

     知识点名称

     c) 接口当中的变量全部为全局常量,而抽象类当中能够定义任何类型的变量; d) 抽象类当中有构造函数,而接口没有; 第二, 在使用方面,接口使用的会更多一些,因为接口能够更好的隐藏实现的细节,降低系统的耦合度,从而提高可扩展性,下面就谈一下我在开发中所明白得的抽象类和接口的区别:

     a) 在我经常使用的设计模式当中,如工厂模式,依靠诸如模式,DAO 模式等,要紧使用的是接口,而抽象类只在模板模式当中有...

    推荐访问:知识点 面试 Java