Java语言的一些背景知识的整理

从以前就一直听人说java好学又好用,工作机会多,所以也就觉得学这个会轻松一点。断断续续地学了一点,到现在都要找工作了发现对什么是Java都并不是很了解。所以呢,学人家写一下博客,仅供自己参考。

什么是Java?

Java是一种程序设计语言。什么是程序设计语言呢?就是我们人和计算机交流使用的语言,我们希望计算机帮助我们完成一些工作,最开始是为了完成科学计算任务,到后来我们希望计算机帮助我们完成更高级的一些工作,比如存储资源,展示资源,资源在不同计算机之间的通信等等,这就需要我们用一种语言告诉计算机怎么去实现我们想要的功能。这样的语言有很多种,Java只是其中的一种。

为什么是Java?

1 、Java是一种跨平台的语言,编写好的Java程序可以运行在任何具有Java运行环境的平台上,而不需要对代码做任何修改。这其实是因为jvm的存在,虚拟机提供了Java程序运行时所需的计算机环境,对应用程序来说,虚拟机屏蔽了代码在底层的实现,对底层系统来说,它不关心Java程序是怎么样的,只需要运行虚拟机就行。就是在程序和底层操作系统之间增加了一层虚拟机,使得双方不需要直接进行通信。JVM还具有优秀的垃圾回收机制,和日志监控,这帮助我们在开发的过程中能够更专注于业务逻辑的实现,极大地提高了我们的开发效率。

2、社区支持强大。全世界有上千万的Java开发人员,这些人员虽然大部分,尤其是国内程序员对Java语言的发展和使用没有做出什么贡献,但是还是有很多人会提供很多免费的和开源的Java工具供大家使用,也因此Java语言一直都在更新,维护,进步。在Java开发过程中遇到的很多问题,在Java社区中都可得到很好的解决方案。

3、Java语言相对简单,并且提供了丰富的类库,简化了开发的代码量,降低开发难度。

4、Java语言支持面向对象编程和面向接口编程。

面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。在具体的程序中,一个对象可以理解为一个具有(状态、属性、和动作)的功能实体,当我们要添加或者删除某个功能的时候,只需要在这个对象上进行修改,而不需要对其他对象进行修改。

面向接口编程就是先把客户的业务逻辑线提取出来,作为接口,业务具体实现通过该接口的实现类来完成。 接口定义的是一种动作,代表的是这个动作的结果,而不是动作的过程。比如‘吃饭’这个接口,每个不同的人(对象)都有实现这个接口的能力,但是每个人实现接口的方式不同,有人用手,有人用筷子,有人用刀叉。为什么使用接口呢,一方面,在程序开发过程中,不可能由一个人完成全部项目的开发,事先定义好接口,不同的开发人员可以根据自己的逻辑去进行实现,这样提高了开发的效率。

Java的特点:

封装:就是隐藏类的属性和实现细节,使得外部程序只能通过类提供的方法访问隐藏信息。

封装的好处:通过合并特征和行为来创建新的数据类型。隐藏类的实现细节,让使用者只能通过程序员规定的方法来访问数据,可以方便的对实现逻辑进行修改,限制不合理操作。

封装时的权限控制符区别如下:

继承:是 java 中实现代码重用的重要手段之一,java中只支持单继承,即每个类只能有一个父类,继承表达的是 is a 的关系,或者说是一种特殊和一般的关系。

主要功能:减少重复代码,层次结构清晰。子类拥有父类的所有属性和方法(除了private修饰的属性不能拥有)从而实现了实现代码的复用;

继承的初始化顺序:父类对象属性初始化---->父类对象构造方法---->子类对象属性初始化--->子类对象构造方法

 

多态:多态就是对象的多种形态

通过分离做什么和怎么做,实现接口和实现的分离

多态的三个条件:

1.    继承的存在(继承是多态的基础,没有继承就没有多态).

2.    子类重写父类的方法(多态下调用子类重写的方法).

3.    父类引用变量指向子类对象(子类到父类的类型转换).

1.引用多态   

Class Animal{}
Class Dog extends Animal{}

Animal A = new Animal(); // 父类的引用指向本类的对象;

Animal B = new Dog(); // 父类的引用指向子类的对象;

2.方法多态

  根据上述创建的两个对象:本类对象和子类对象,同样都是父类的引用,当我们指向不同的对象时,它们调用的方法也是多态的。

  创建本类对象时,调用的方法为本类方法;

  创建子类对象时,调用的方法为子类重写的方法或者继承的方法;

  使用多态的时候要注意:如果我们在子类中编写一个独有的方法(没有继承父类的方法),此时就不能通过父类的引用创建的子类对象来调用该方法!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值