首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

零基础学Java,必须搞懂的10个问题

关注思途科技在线,发现世界的美好

Java是当前互联网行业内的热门语言,不仅可以应用于Android和网站开发而且也广泛应用于金融服务、高频金融空间等领域。也正是因为高居不下的热度,越来越多的人选择学习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仅仅只能修饰变量,却不能修饰类和方法。被其修饰的变量值将不会被持久化更不会被恢复。

以上就是零基础学习Java语言需要搞懂的十个问题。想要掌握更多有关Java开发方面的知识,不妨关注中享思途Java+大数据课程,科学的学习工具、把控每个细节,为你的前程保驾护航。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190417A07QV000?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券