【蜕变之路】第6天 面向对象 (2019年2月24号)

        Hello,大家好!我是程序员阿飞!今天呢,我们主要学习一下Java中最常见的也是最基础的知识点:面向对象。除此之外,文章最后我会分享一道经典的面试题。好了,废话不多说了,我们直接进入今天的主题。

1、面向对象与面向过程的区别

答:相同点:两者都是软件开发的思想,先有面向过程,后有面向对象。在大型项目中,针对面向过程的不足,提出了面向对象的思想。

       不同点:

                (1)编程思想不同:面向过程以实现功能的函数为主,而面向对象首先要抽象出类、属性和方法,然后通过实例化类来完成功能。

                (2)封装性不同:面向过程封装的是功能,而面向对象封装的是数据和功能。除此之外,还具有继承性和多态性。


2、面向对象的三大基本特征

答:面向对象的三大基本特征:封装、继承、多态

      (1)封装

               隐藏内部细节,提供对外接口。其主要目的是为了保证数据的安全性。     

      (2)继承

               一个类继承另一个类,就是我们常说的子类和父类。其目的是提高代码的复用性。

      (3)多态

              相同的事物,调用其相同的方法,参数也相同时,但表现的行为却不同。



    题目:一个包含1-100数字的数组中,查找任意丢失的数字!

                /*

                 * 算出1~100的和sum.

                 * 计算出给定数组所有数之和otherSum.

                 * 丢失的数字为sum-otherSum.

                 */

                public class Demo03 {

                 public static void main(String[] args) {

                 int[] nums = { 1, 2, 3, 4, 5, 6,  8, 9, 10,

                                11, 12, 13, 14, 15, 16,17, 18, 19, 20,

                                21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 

                                31, 32, 33, 34, 35, 36, 37, 38, 39, 40,

                                41, 42, 43, 44, 45, 46, 47, 48, 49, 50,

                                51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 

                                61, 62, 63, 64,65, 66, 67, 68, 69, 70, 

                                71, 72, 73, 74, 75, 76, 77, 78, 79, 80,

                                81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 

                                91, 92, 93, 94, 95, 96,97, 98, 99, 100 };

                             System.out.println(findNumber(nums));

                 }

                

                 public static int findNumber(int[] nums){

                 int n = nums.length;

                            int sum = (n+1) * (n+2)/2;

                            int otherSum = 0;

                            for (int i : nums) {

                                otherSum += i;

                            }

                             return sum-otherSum;

                 }

                }

             

        分享时刻:

                慕课网

                职坐标

                实验楼

猜你喜欢

转载自blog.51cto.com/12388374/2354027