java 基础入门

1.JDK和JRE的区别:

JDK是java开发人员在开发过程中使用的软件开发包,它提供了java的开发环境和运行环境
JRE是Java Runtime Enviroment是指java的运行环境
如果你只想做java程序,只要安装JRE就够了,如果从事开发就得安装JDK
JDK包含了JRE

2.path和classpath的区别:

path是系统变量,和java无关,里面存放的是各种可执行的应用程序的路径
classpath是给java使用的,从字面理解是类的路径,主要是模仿,将类文件路径配置到
classpath中实现了系统在任何位置可以对类文件进行编译和执行

3.static关键字是什么意思?java中是否可以覆盖一个private或者是static的方法?

static关键字表名一个成员变量或者是成员方法可以在没有所属的类的实例变量的情况
下被访问
java中的static方法不能被覆盖,英文方法覆盖是基于运行时动态绑定的,而static方法是
编译时静态绑定的,static方法跟类的任何实例都不想关,所以概念上不适用

4.重写和重载的区别:

方法的重写和重载是java多态性的不同体现,重写是父类与子类之间多态性的一种体现,重载是一个
类中多态性的体现,如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写了
子类的对象使用这个方法时,将调用子类中的定义,父类中的方法被屏蔽了,如果一个类中定义了多个
同名方法,他们的参数个数或者不同的参数类型,则成为方法重载

5.接口和抽象类的区别是什么?
接口中所有的方法隐含都是抽象的,而抽象类可以同时包含抽象和非抽象方法,
类可以实现多个接口,但是只能继承一个抽象类
接口中声明的变量默认都是final的 抽象类可以包含非final的变量
接口和抽象类都是不可以被实例化的

6.java的基本数据类型

整数型:byte short int long
浮点型:float double
字符型:char
布尔型:Boolean

7.char型变量能不能存储一个中文汉字?

char型变量是用来存储Unicode编码字符的,Unicode编码字符集包含了汉字,所以是可以存储
汉字的

8.&和&&的区别

&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时
整个运算结果才为true,否则只要有一方为false,则结果为false,&&具有短路的功能,如果一个
表达式为false,则第二个表达式就不会计算,

9.进程和线程的区别是什么?

进程是执行的应用程序,而线程是进程内部的一个执行序列,一个进程可以包含多个线程,

10.线程的运行时状态

新建:使用new时 ,线程处于新建状态
就绪:当执行start()方法的时候,线程进入就绪状态
运行:当线程获取到CPU的执行权,线程进入到运行状态
阻塞:是指线程因为某种原因,放弃了CPU的使用权,暂时停止运行,直到线程进入就绪状态
从新获得CPU的使用权,才会进入到运行状态,
阻塞状态分为三种:
等待阻塞:运行的线程执行wait()方法,JVM会把线程放入等待队列中
同步阻塞:当遇到synchronized 时
其他阻塞:线程执行sleep()或join()方法时,
死亡:当线程执行完毕,或者异常退出,线程结束

11.sleep()和wait()的区别
sleep()在线程调用时,他不会释放对象锁,
wait()是Object中的方法,线程调用时,会释放对象锁

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值