Java面试大全:基础知识全面剖析

需积分: 3 6 下载量 147 浏览量 更新于2024-08-02 收藏 221KB DOC 举报
Java面试大全 绝对的全面 Java是一种广泛使用的编程语言,具有强大、灵活、平台独立等特点。本资源摘要信息将涵盖Java基础知识、Java面试常见问题和解决方案,帮助开发者快速掌握Java技术。 一、Java基础知识 1. 作用域public、private、protected、以及不写时的区别 在Java中,变量或方法的访问权限可以通过public、private、protected三个关键字来控制。public表示公共的,任何类都可以访问;private表示私有的,只有当前类可以访问;protected表示保护的,当前类和子类可以访问;不写时默认为friendly,当前类和同一package的类可以访问。 2. AnonymousInnerClass(匿名内部类) 匿名内部类是没有名字的内部类,不能extends(继承)其他类,但可以implements(实现)interface(接口)。匿名内部类可以作为一个接口,由另一个内部类实现。 3. StaticNestedClass和InnerClass的不同 NestedClass(一般是C++的说法),InnerClass(一般是JAVA的说法)。Java内部类与C++嵌套类最大的不同就在于是否有指向外部的引用。静态内部类(Inner Class)意味着1创建一个static内部类的对象,不需要一个外部类对象,2不能从一个static内部类的一个对象访问一个外部类对象。 二、Java常见问题 4. &和&&的区别 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。在Java中,&和&&都是逻辑运算符,但&是按位与运算符,&&是短路与运算符。 5. Collection和Collections的区别 Collection是集合类的上级接口,继承于他的接口主要有Set和List。Collections是针对集合类的一个帮助类,他提供了一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 6. 什么时候用assert assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。一般来说,assertion用于保证程序最基本、关键的正确性。assertion检查通常在开发和测试时开启。为了提高性能,在软件发布后,assertion检查通常是关闭的。 7. Strings=new String("xyz");创建了几个StringObject Strings=new String("xyz");创建了两个String对象,一个字符对象,一个字符对象引用对。 Java基础知识是Java开发的基础,mastering Java基础知识是成为一名优秀的Java开发者的必备条件。本资源摘要信息涵盖了Java基础知识和Java面试常见问题,旨在帮助开发者快速掌握Java技术。