初级JAVA面试题

入职公司觉得很久了,恰巧最近有位小弟跳槽辞职,但是他还是我的大佬,本人半路出家做和尚,社会划水经验来谈我可能比他多点,码代码经验嘛 我舒适是个弟弟!咱们书归正传,最近他在准备面试,看jdk1.8的新特性,瞬间让我想到我刚面试那些公司的时候也似曾相识,就在他旁边陪她看了一会发现之前脑子的瞬时记忆放到现在来看都忘得一干二净,所以这可能也是我写这篇文章的目的把,看看之前的面试题(凭记忆),顺便发个文给新号长点粉丝!

1.并行和并发的区别

并行: 在多台处理器上同时处理多个任务--> 辅助记忆: 排队买票,两个售票员排两队,n个售票员排n队,n个售票员代表n个处理器在同一时间处理人物.

并发: 在一台处理器上,同一时间(比如早上十点),一堆人全部都来买票,而售票员只有一个人,一个人来回给这一堆人卖票,这叫并发.

2.成员变量和局部变量的区别

成员变量的位置是在类里方法外, 随着类的创建而创建 随着对象的消失而消失, 存放在堆内存中,无需初始化会有内存.---------> 总结: 成员变量 ,一个类里的方法和属性

局部变量:统一方法内,存在于占内存中,随着方法的调用而有的生命周期,需要给他内存赋初值------>总结: 局部变量,一公共方法中的属性.

3.数组的工具类

Arrays  Arrays.toString(数组)  Arrays.copyOf(第一个数组,第二个数组)

Arrays.sort(数组) //给数组中 的内容根据种类排序

4.队列和栈和堆得区别:

队列 先进先出 排队   

栈  先进后出  圆柱体

堆 创建对象都存在与堆内存中

5.创建对象经历的过程

  1. 在栈内存中开一块内存 存P
  2. 在堆内存中开一块内存 存Phone() 对象
  3. 给对象中的属性赋初值
  4. 给对象生成一个唯一地址值给P 来保存,调用对象方法时可以直接通过地址值调用

 

 图片摘自:一起学JAVA 学习路径 知识体系_程序媛 泡泡的博客-CSDN博客_java学习路径

6.操作数据库 ---增删改查 CURD

Create table wangdaniu(
Id int(10),
Name varchar(100),
Tel varchar(20)
);
Show tables;
DROP TABLE wangdaniu
Alter table wangdaniu add column sal numeric(10,2);
Numeric(20,2) //20是数字的个数 ,2 是小数点后几位
desc wangdaniu;//描述表的类型

 // 数据的增删改查:
select  * from wangdaniu where id = 10;
Insert into wangdaniu_table values

 

字段约束:

unique , not null ,primary key auto_increment

基础函数 :

LOWER   UPPER         CONCAT         SUBSTR         LENGTH         REPLACE        IFNULL,

SELECT NOW()         SELECT YEAR(NOW())

聚合函数: max(),min(),count(),sum(),avg(),

分组: order BY SAL DESC(降序) ASC(升序)

Select distinct * from emp where sal=”” group by sal having asda>12 order by asd asc

7.创建表格 

相对于创建表格来说 有一些约束 : 字段约束:唯一约束,主键约束,非空约束等

  1. 默认约束 default   sex varchar(10)default”男”,
  2. 检查约束 check  age int check(age>20 and age<1000)
  3. 外键约束 foreign
    Create table foreign_table(
    Id int primary key auto_increment,
    Name varchar (20),
    Age int check(age >0 and age <200),
    Sex char(10)default “男”
    )
    
    Create table tb_user_address(
    User_id int primary key,
    Address varchar(200),
    Foreign key (user_id) references foreign_table(id)
    )

8.form 中的input可以设置readonly 和disable ,两者区别?

readonly只读,对文字内容的只能读取,disable表示不可用,在input中只读表示只能读取不能更改,但是其他功能正常使用复制粘贴等 ,disable是直接文本框变成灰色,不能点击组织对元素的一切操作

9.document.getElementById("xxx").innnerHTML 与innnerText用途和区别

innnerHtml 包含html标签 text不包含html标签 只包含文本

10.如何在点击一个按钮时候使用jQuery隐藏一个图片

    $("img"),slideUp(2000,function())

11.同步和异步 :

同步:客户端向服务器发送请求,需要等到服务器的返回值结果才能继续别的操作.
异步: 客户端向服务器发送请求,不需要等到返回值结果,而是服务器将请求存到队列中等待被调用.
两者区别在于异步会节省时间提高请求效率,而同步不能,但是有的需求需要得到返回值才能进行下一步操作,所以并不是所有请求都是异步的.

12.hashmap和hashtable的区别

hashMap继承AbstractMap 实现Map,Cloneable/seriliazable接口
hashtable继承Dictionary类,实现Map/,Cloneable,serilizable接口

线程安全不同,table同步 但是线程安全,支持多线程
map是非同步的,不是线程安全的


13.string buffer string builder 的区别

1. buffer 是1.0 出道线程安全,效率低
2.builder 是1.5 出道线程不安全,效率高 ,本质上都是继承abstractStringBuilder来干活 ,只不过buffer加了同步关键字 让线程边安全了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值