每个Java编程初学者都应该知道的几个问题

   Java是当前互联网行业内的热门语言,不仅可以应用于Android和网站开发而且也广泛应用于金融服务、高频金融空间等领域。也正是因为高居不下的热度,越来越多的人选择学习Java语言。那么零基础学习Java都需要搞懂哪些问题呢?本文苏州学码思小编整理了学习Java需要搞懂的几个问题,一起来看看吧!

1、Java语言的特点,Java与c++的区别

Java语言具有简单易学、安全性、可靠性、支持多线编程、编译和解释共存、与平台无关性等特点。Java与c++都是面向对象的语言。两者的区别是,C++的类支持多重继承,而Java的类是单继承的,但接口是多继承的。

2、Java应用程序和小程序的区别

通俗来讲,applet小程序并没有main方法,而是类似于flash小游戏,主要嵌在浏览器页面上运行(调用init()线程或run来启动),而应用程序则是利用main方法,即主线程启动。

3、Java面向对象编程的三大特性

Java面向对象编程的三大特性分别是:封装、继承和多态。

封装:即将一个对象的属性私有化,另外提供一些可以被外界访问属性的方法。属性不想被外界访问的情况下,可以不像外界提供访问的方法。不过,一个类若不向外界提供可访问的方法,就毫无意义可言了。

继承:即使用已存类的定义作为基础建立新类。新类的定义不仅增添了新的数据和功能而且可以使用父类的功能,但是不能选择性的继承父类。

多态:指程序中定义的引用变量指向的具体类型和依靠此引用变量发出的方法调用在编程中并不确定。而是在运行过程中才确定。

4、面向对象和面向过程的区分

第一,面向对象具有封装、继承、多态性等特点,因此可以设计出低耦合的系统,且易于维护、复用、和扩展。而面向对象的缺点是在性能方面比面向过程要低。

第二,面向过程的优点是性能相比于面向对象要低。但缺点是在维护、复用、扩展方面的作用低于面向对象。

5、重载和重写的区别

重载:重载发生在同一类中,方法名一定要相同,而参数类、个数、顺序可以不同。

重写:重写发生在父子类中,方法名以及参数列要保证相同,但返回值范围、所抛出的异常范围小于等于父类;而访问修饰符则大于等于父类。

6、成员变量与局部变量的区别

首先,从语法方面来看。成员变量属于类,而局部变量是方法的参数或者是在方法中定义的变量;而局部变量不同于成员变量,不可被static修饰,也不能被访问控制修饰符所修饰。

其次,从变量在内存中的生存时间方面来看。局部变量会随着方法的调用而自动消失,而成员变量是对的组成部分,会随着对象的创建而存在。

此外,如果成员变量没有被赋予初值,那么将会自动以类型的默认值而赋值,但局部变量则不会自动赋值。

7、构造方法的特性有哪些

构造方法的特性主要包括:不存在返回值,但不可用void声明构造函数;自动执行生成类的对象,不许调用;名字和类名相同。

8、什么是方法的返回值?返回值在类的方法里的作用是什么?

所谓方法的返回值是指获取到某个方法体中的代码执行后所产生的效果。其作用是,接受出结果以供其他操作使用。

9、线程有哪些基本状态?

Java线程的基本状态分为NEW(初始状态)、RUNNABLE(运行状态)、BLOCKED(阻塞状态)、WAITING(等待状态)、TIME_WAITING(超时等待状态)、TERMINATED(中止状态)。

10、Java序列化中如果有些字段不想进行序列,该如何处理?

使用transient关键字修饰是对于不想进行序列化的变量的处理方式。不过transient仅仅只能修饰变量,却不能修饰类和方法。被其修饰的变量值将不会被持久化更不会被恢复。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值