类和对象的白话讲解

【传智播客.黑马程序员训练营成都中心】

转载请注明出处
作者: 成都校区.皓月当空

类和对象的白话讲解

本文章作为类和对象的入门讲解,通俗易懂,很适合Java零基础的兄弟们阅读。

很多哥们在学习类和对象知识点的时候,都感觉比较难学,分不清什么是类什么是对象,接下来我就带大家一起来学一学,让大家学起来不是那么的困难。

  • 1、什么是类

    很多人对类的解释是这么说的,类是事物的属性和行为的集合,是一个抽象的概念。听起来确实很抽象,说了和没说也没啥区别。那到底啥是类呢?这里我就要先讲一个故事了。

    故事:
    话说,在古代,一个小男孩去神农架旅游,走着走着进了一个很深的森林中,突然,这个小男孩看到了不远处有一个很大的全身长满了毛发的猩猩,但是看起来就和人一样,行为不像猩猩,更像是人,后来小男孩回到了客栈,拿起笔和纸,写上了这样一段话:

    信的内容:
    亲爱的小花,前些天我在神农架游玩,在深山处看到了一个奇特的动物,这个动物黑黑的,全身长满了毛发,身高有2米高,跳的很高,跑的也很快,不知道你听到我的描述之后,会不会对这个动物感兴趣呢?爱你的小明。

    以上的文字是信里的内容,那当小花收到这封信之后,会通过看小明写的这些文字,在大脑里就可以幻想出大概这个奇特的动物长什么样子了。其实小明在描述一类事物,这个奇特的动物可能不止一个,可能会有很多个,他们都有相似或者相同的外在特征,也都会跳,都会跑,所以这在我们现实生活中就被称为类。其实在JAVA世界中也一样。由于我们程序员要和计算机打交道,我们要和计算机进行沟通,如果我们想要描述一类事物的时候,我们不可能用语言说出来,计算机没那么发达,但是我们可以通过计算机认识的代码体现出来,这样计算机就可以知道我们要描述的事物是什么样子了,比如我们可以这样写:

      class 野人 {
          //这类事物的外在特征:属性
          int 身高;
          String 颜色;
      
          //这类事物具备的功能,行为
          public void jump() {}
          public void run() {}
      }
    

    这么写和小明写给小花的信差不多,当我们这么写完之后,计算机就认识了,就知道你要告诉它这个事物大概长什么样子了。这就是JAVA世界中的类。

    如果看了以上的内容大家还是不懂什么是类的话,那我们可以问自己一个问题,就是我们为什么叫做做 人"类" ?大家可以好好的想一想,为什么我要叫做人类,而不叫做鸟类,鸡类呢?因为我们有相似或者相同的属性,也就是外在特征,我们也都具备共同的功能,比如说吃喝拉撒睡,所以我们都是人类,这个人类不是具体的谁谁谁,就是一个叫法,而在JAVA世界中,类就这和我们现实生活中的类是一样的,现实生活中有人类,那JAVA世界中,我们也可以写一个人类。

    说了这么多,相信大家对类的理解应该又提高了一个档次,关于类的讲解就说到这里,接下来咱们来学习什么是对象。

  • 2、什么是对象

    刚才我们讲解了类,知道了类就是对一类事物的描述,并不是具体的指谁谁谁,那对象是什么呢?比如,如果说我们大家都是人类的话,那你,我,他,我们的每一个人,那就都是每一个对象,有100个人,那就有100对象,这100个对象都是属于人类。相比大家现在对对象也有了一定的理解吧。

  • 3.怎么定义一个类

    我们知道了什么是类,什么是对象之后,那在JAVA中,我们就要去写类,写对象,那怎么写一个类呢?

    格式:

      class Person {
          String name;//姓名
          int age;//年龄
          String gender;//性别
          String xingzuo;//星座
          String xuexing;//血型
    
          //吃的功能
          public void eat() {
              System.out.println("吃");
          }
    
          //喝的功能
          public void drink() {
              System.out.println("喝");
          }
    
          //拉的功能
          public void la() {
              System.out.println("拉");
          }
    
          //撒的功能
          public void sa() {
              System.out.println("撒");
          }
    
          //睡的功能
          public void sleep() {
              System.out.println("睡");
          }
      }
    

    说明:

    class是用来定义一个类的关键字
    我们在写某个事物的时候,要分析该事物有哪些属性和行为,属性在JAVA中就是成员变量,行为在JAVA中就是成员方法,我们在写一个类的时候,只需要把这个事物的属性和行为也出来就可以了。

  • 4.怎么使用一个类

想要使用一个类,只需要创建该类的对象,我们使用对象就可以了。
就好比说让你去打一个人,你能去打人类吗?不可能,你应该去打某一个人,所以我们写完类,不能去使用人类,而是去操作具体的某一个人,也就是对象。

首先我们要写出一个类,然后使用类的对象,这次就拿猪类举例:

    //描述类
    class Pig {
        private String name;//姓名
        private int age;//年龄
        private String xingzuo;//星座

        public Pig() {}

        public Pig(String name, int age, String xingzuo) {
            this.name = name;
            this.age = age;
            this.xingzuo = xingzuo;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getName() {
            return this.name;//此处this可以省略,因为没有同名的局部变量
        }

        public void setAge(int age) {
            this.age = age;
        }

        public int getAge() {
            return this.age;
        }

        public void setXingzuo(String xingzuo) {
            this.xingzuo = xingzuo;
        }

        public String getXingzuo() {
            return this.xingzuo;
        }

        //吃的功能
        public void eat() {
            System.out.println("吃肉");
        }
    }

    //测试类
    class Demo {
        public static void main(String[] args) {
            //创建一头猪(创建对象的格式:类名 对象名 = new 类名())
            Pig pig1 = new Pig("jack", 18, "白猪座");

            //看第一头猪的属性和行为
            System.out.println(pig1.getName());
            System.out.println(pig1.getAge());
            System.out.println(pig1.getXingzuo());

            pig1.eat();

            //创建一头猪
            Pig pig2 = new Pig("tom", 19, "黑猪座");

            //看第二头猪的属性和行为
            System.out.println(pig2.getName());
            System.out.println(pig2.getAge());
            System.out.println(pig2.getXingzuo());

            pig2.eat();
        }
    }

以上内容就是本章要给大家讲解的知识点,内容不多,但是精辟,可以帮助大家尤其是零基础的哥们们学好Java基础中的类和对象,最后祝愿每一位学习Java的兄弟们马到成功,更上一层楼。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 33,782评论 18 399
  • 小编费力收集:给你想要的面试集合 1.C++或Java中的异常处理机制的简单原理和应用。 当JAVA程序违反了JA...
    八爷君阅读 10,261评论 1 114
  • 最近周围的同事都在推荐这本书,花了一周的时间利用上下班地铁上的时间读完了这本书,这本书写的很简单明了,全书围绕一个...
    宗主小鱼儿阅读 11,776评论 0 0
  • 都说君子之交淡如水,或许真的是那样清纯、甜美,彼此相见时无话不谈,分开后也似乎不再想念,即使是几年的不相见...
    千古一人阅读 1,463评论 0 0
  • 01 感谢父母生我养我,让我能够健康的生活到现在,感谢他们把我带到这个世界,让我可以看尽世界繁华。感谢他们对我的爱...
    宇宙玩家Lucy阅读 1,558评论 0 1

友情链接更多精彩内容