Java 基础语法-面试题(54-63道)(数组+类+包)

简介: Java 基础语法-面试题(54-63道)(数组+类+包)

基础语法面试题(54-63道)(数组+类+包)

54. 定义一个一维的 int 数组,先创建它,并初始化它,给它赋值,然后输出其中的一个值
public class Arr {
    public static void main(String[] args) {
        int a[] = new int[5];
        //a={1,2,3,4,5};//错误 , 只能在初始化时这样做
        a[0]=1;
    a[1]=2;
      System.out.println(a[0]);  //1
    }
}
55. 定义一个一维的 A 类型数组,直接定义并赋值,然后输出其中的一个值
public class A {
    public static int i;
    public static void main(String args[]){
        A aa = new A( );
        A bb = new A( );
        A a[] = {aa,bb};
        a[0].i=2;
        System.out.println(a[0]);
    }
}
//JavaseDemo.A@723279cf
56. 把上面的数组改成 2 维的数组
public class A{
    public static int i;
    public static void main(String args[]){
        A a [][] = new A[5][5];
        a[0][0].i=2;
        System.out.println(a[0][0]);
    }
}
//null
57. 举例说明数组拷贝方法的使用:arraycopy 方法
public class A{
    public static void main(String args[]){
        int a[] = new int[5];
        int b[] = new int[5];
        System.arraycopy(a[5],0,b[5],0,a.length);//主线程异常 索引出界
        System.out.println(b[0]);
    }
}
//Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5
  at JavaseDemo.A.main(A.java:5)

58. 什么是构造和析构方法?功能是?

构造方法:每个类至少有一个构造方法,类初始化时调用的方法


1.方法名和类名相同


2.无返回值类型


格式:访问权限 类名(参数列表) {};


1.自己定义构造后,就没有默认的构造方法


2.无构造方法时,默认为空参的构造方法(无参数,方法体为空)


析构方法:finalize


类销毁时,自动调用方法


当对象在内存中被删除时,自动调用该方法


在此方法中可以写回收对象内部的动态空间的代码


59. 简述 Java 的访问修饰符类型?分别有什么功能?

public 公开的,任何一个类都有可以访问


protected 同包同类,只可被它的子类访问


default 只能被同一个包中类访问


private 私有的,只能在本类中被访问


60. 分别说明:在类上、在属性上、在方法上能使用哪些访问修饰符

在类上:public default final


在方法上: 访问权限:public protected private default


方法修饰符:static


final


返回类型:void


在属性上:public protected private default


static


final


61. 简述什么是包?包的功能

包:对所定义的多个 JAVA 类进行分组,将多个功能相关的类定义到一个包(文件)中。


功能:


易于查找和使用适当的类

包不止包含类和接口,还可以包含其它包,形成层次的包空间

有助于避免命名冲突

62. 请写出 5 个以上的 JDK 中的包,以及他们的基本功能

java.awt: 包含构成抽象窗口工具集的多个类,用来构建和管理应用程序的图形用户界面


java.lang: 提供 java 编成语言的程序设计的基础类


java.io: 包含提供多种输出输入功能的类,


java.net: 包含执行与网络有关的类,如 URL,SCOKET,SEVERSOCKET,


java.applet: 包含 java 小应用程序的类


java.util: 包含一些实用性的类


63. 什么是包装类?Java 中都有哪些包装类

在 JDK 中针对各种基本类型分别定义相应的引用类型 ————–称为封装类


Boolean Byte Short Integer Long Float Double Character

目录
相关文章
|
存储 缓存 Java
Java数组全解析:一维、多维与内存模型
本文深入解析Java数组的内存布局与操作技巧,涵盖一维及多维数组的声明、初始化、内存模型,以及数组常见陷阱和性能优化。通过图文结合的方式帮助开发者彻底理解数组本质,并提供Arrays工具类的实用方法与面试高频问题解析,助你掌握数组核心知识,避免常见错误。
|
存储 Java 容器
Java基本语法详解
本文深入讲解了Java编程的基础语法,涵盖数据类型、运算符、控制结构及数组等核心内容,帮助初学者构建坚实的编程基础。
|
12月前
|
存储 SQL NoSQL
Redis-常用语法以及java互联实践案例
本文详细介绍了Redis的数据结构、常用命令及其Java客户端的使用,涵盖String、Hash、List、Set、SortedSet等数据类型及操作,同时提供了Jedis和Spring Boot Data Redis的实战示例,帮助开发者快速掌握Redis在实际项目中的应用。
808 1
Redis-常用语法以及java互联实践案例
|
12月前
|
Java
Java基础语法与面向对象
重载(Overload)指同一类中方法名相同、参数列表不同,与返回值无关;重写(Override)指子类重新实现父类方法,方法名和参数列表必须相同,返回类型兼容。重载发生在同类,重写发生在继承关系中。
287 1
|
12月前
|
Java
Java 数组学习笔记
本文整理Java数组常用操作:遍历、求和、查找、最值及二维数组行求和等典型练习,涵盖静态初始化、元素翻倍、去极值求平均等实例,帮助掌握数组基础与应用。
|
Java 数据库连接 数据库
Java 相关知识点总结含基础语法进阶技巧及面试重点知识
本文全面总结了Java核心知识点,涵盖基础语法、面向对象、集合框架、并发编程、网络编程及主流框架如Spring生态、MyBatis等,结合JVM原理与性能优化技巧,并通过一个学生信息管理系统的实战案例,帮助你快速掌握Java开发技能,适合Java学习与面试准备。
573 2
Java 相关知识点总结含基础语法进阶技巧及面试重点知识
|
算法 Java 测试技术
零基础学 Java: 从语法入门到企业级项目实战的详细学习路线解析
本文为零基础学习者提供完整的Java学习路线,涵盖语法基础、面向对象编程、数据结构与算法、多线程、JVM原理、Spring框架、Spring Boot及项目实战,助你从入门到进阶,系统掌握Java编程技能,提升实战开发能力。
822 0
|
存储 Java 索引
java 数组
在 Java 中,数组是一种数据结构,用于存储多个相同类型的数据元素。数组的大小一旦创建后就不能改变,因此它是固定长度的。Java 数组是一种 对象,即使它存储的值是基本类型(如 int、double 等),它也是一个对象引用。
281 0
|
Java 开发者
奇迹时刻!探索 Java 多线程的奇幻之旅:Thread 类和 Runnable 接口的惊人对决
【8月更文挑战第13天】Java的多线程特性能显著提升程序性能与响应性。本文通过示例代码详细解析了两种核心实现方式:Thread类与Runnable接口。Thread类适用于简单场景,直接定义线程行为;Runnable接口则更适合复杂的项目结构,尤其在需要继承其他类时,能保持代码的清晰与模块化。理解两者差异有助于开发者在实际应用中做出合理选择,构建高效稳定的多线程程序。
288 7