Java-简单认识类和对象

这篇具有很好参考价值的文章主要介绍了Java-简单认识类和对象。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、初步认识面向对象

        1.1 什么是面向对象

                Java是一门纯面向对象的语言(Object Oriented Program,简称OOP),在面向对象的世界里,一切皆为对象面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情。用面向对象的思想来涉及程序,更符合人们对事物的认知,对于大型程序的设计、扩展以及维护都非常友好。

        1.2 面向对象和面向过程

                拿家中洗衣服为例,在自动洗衣机出现前,都是手洗衣服,要清楚每一步及接下来的过程,洗衣过程如图例

Java-简单认识类和对象,java,开发语言

                 注重洗衣服过程,其中的环节都不能少,不同衣服洗的方法、时间长度、脱水方式不同,按照此方式写代码,将来扩展和维护就比较麻烦。而在自动洗衣机出现之后,人们就不需要再注意过程。只需将衣服向洗衣机里一放,倒入洗衣粉,调好模式(洗的方式,时间长短,脱水方式)最后启动即可。

Java-简单认识类和对象,java,开发语言

                 在洗衣服过程中,总共有四个对象:人、衣服、洗衣粉、洗衣机,洗衣服过程:人将衣服放入洗衣机、倒入洗衣粉、启动洗衣机,洗衣机就能完成洗衣服过程并脱水。整个过程是人、衣服、洗衣粉、洗衣机四个对象之间交互完成,人不需要关心洗衣机具体是如何洗衣服,如何脱水的。

Java-简单认识类和对象,java,开发语言

                 以面向对象方式来进行处理,就不关注洗衣服的过程,具体洗衣机是怎么来洗衣服,如何来甩干的,用户不用去关心,只需要将衣服放进洗衣机,倒入洗衣粉,启动开关即可,通过对象之间的交互来完成的

                注意:面向过程和面相对象不是一门语言,而是解决问题的方法,没有好坏之分,都有专门的应用场景

 二、类的定义和使用

        面相对象程序设计关注的是对象,而对象是现实生活中的实体,比如:洗衣机。但是洗衣机计算机并不认识,需要开发人员告诉计算机什么是洗衣机,比如洗衣机的品牌、型号、尺寸、重量、洗涤功率、脱水功率、洗涤容量、脱水容量、洗涤模式、材质等,这些对洗衣机的描述就是对洗衣机对象(实体)进行抽象,但是这些简化的抽象结果计算机也不能识别,开发人员可以采用某种面相对象的编程语言来进行描述,比如:Java语言。

        2.1 认识类

                类是用来对一个实体(对象)来进行描述的,主要描述该实体(对象)具有哪些属性(外观尺寸等),哪些功能(用来做什么),描述完成后计算机就可以识别了。

                例如:洗衣机是一个品牌,可以看成一个类

                属性:品牌、型号、重量、尺寸、颜色等

                功能:洗衣、定时、脱水等

        2.2 定义类的格式

                在java中用class关键字定义类。

            //创建类

           class ClassName{

                  field;                //属性或者字段或者成员变量

                  method;              //功能或者行为或者成员方法

           }

                例如:对洗衣机类进行定义

      class WashMechine{
             //成员变量
             public String brand;//品牌
             public String type;//型号
             public String color;//颜色
             public double length;//长
             public double width;//宽
             public double height;//高
             //方法
             public void Washclothes(){
                 ystem.out.println("洗衣服功能");
             }
             public void  Dryclothes(){
                 System.out.println("脱水功能");
             }
             public  void Settime(){
                 System.out.println("定时功能");
             }
        }

                注意:类名采用大驼峰定义,成员前都为public写法,方法不带static关键字

        2.3 练习

                1.定义一个狗的类

               class Doge {   

                        //属性或成员变量    

                        public String name;//名字    

                        public String color;//颜色

                        //方法

                        //喊叫

                        public void barks(){

                                System.out.println(name+":汪汪汪~~~");

                        }

                        //摇尾巴

                        public void wag(){

                                System.out.println(name+":摇尾巴~~~");

                        }

                   2.定义一个学生类

        

        class  Students{
             //属性或成员变量    

            public String id;//学号
            public String name;//姓名
            public String sex;//性别

            public int age;//年龄
            public String address;//住址
            //方法

            //上课
            public void Doclass(){
                System.out.println("按时上课,不能迟到,如果请假,请及时补课");
            }
            //写作业
            public void Dohomework(){
                System.out.println("在教务系统查看并完成作业,不能不写");
            }
            //考试
            public void Exam(){
                System.out.println("考试的科目、时间、地点、座号");
            }
        }

                注意:一般一个文件当中只定义一个类;main方法所在的类一般要使用public修饰, Eclipse默认会在public修饰的类中找main方法;public修饰的类必须要和文件名相同;不要轻易去修改public修饰的类的名称,如果要修改,通过开发工具修改。
Java-简单认识类和对象,java,开发语言

三、类的实例化

        3.1 什么是类的实例化

                定义了一个类,就相当于在计算机中定义了一种新的类型,与int,double类似,只不过int和double是java语言自带的内置类型,而类是用户自定义了一个新的类型,比如上述的:Doge类和Students类。它们都是类(一种新定义的类型),有了这些自定义的类型之后,就可以使用这些类来定义实例(对象)。
                用类类型创建对象的过程,称为类的实例化,在java中采用new关键字,配合类名来实例化对象。
Java-简单认识类和对象,java,开发语言

           在main中对类实例化。

 public class Doge {
    public String name;
    public String color;
    public void barks(){
        System.out.println(name+":汪汪汪~~~");
    }
    public void wag(){
        System.out.println(name+":摇尾巴~~~");
    }
    public static void main(String[] args) {
        Doge doge1=new Doge();//用new对类创建实例化对象
        doge1.name="阿黄";
        doge1.color="黑黄色";
        doge1.barks();
        doge1.wag();
        System.out.println("==========");
        Doge doge2=new Doge();
        doge2.name="赛虎";
        doge2.color="棕黄色";
        doge2.barks();
        doge2.wag();
    }
}

Java-简单认识类和对象,java,开发语言

                 注意:new关键字用于创建一个对象的实例;使用“.”访问对象的属性和方法;;同一个类可以创建多个实例

        3.2 类和对象的说明

                类只是一个模型一样的东西,用来对一个实体进行描述,限定了类有哪些成员;类是一种自定义的类型,可以用来定义变量一个类可以实例化出多个对象,实例化出的对象 占用实际的物理空间,存储类成员变量做个比方:类实例化出对象就像现实中使用建筑设计图建造出房子,类就像是设计图,只设计出需要什么东西,但是并没有实体的建筑存在,同样类也只是一个设计,实例化出的对象才能实际存储数据,占用物理空间。

Java-简单认识类和对象,java,开发语言

 四、this引用

        4.1 为什么要有this引用

                例子

public class Date {
        public int year;
        public int month;
        public int day;
        public void setDay(int y, int m, int d){
                year = y;
                month = m;
                day = d;
        }
        public void printDate(){
                System.out.println(year + "/" + month + "/" + day);
        }


        public static void main(String[] args) {
                // 构造三个日期类型的对象 d1 d2 d3
                Date d1 = new Date();
                Date d2 = new Date();
                Date d3 = new Date();
                // 对d1,d2,d3的日期设置
                d1.setDay(2019,3,22);
                d2.setDay(2020,3,22);

                d3.setDay(2021,3,22);
                // 打印日期中的内容
                d1.printDate();
                d2.printDate();
                d3.printDate();
        }
}

Java-简单认识类和对象,java,开发语言

                上述代码定义了一个日期类,然后main方法中创建了三个对象,并通过Date类中的成员方法对对象进行设置和打印.
                1.若形参名不小心与成员变量名相同

            public void setDay(int year, int month, int day){
                        year = year;
                        month = month;
                        day = day;
              }

                此时的函数体中究竟是谁给谁赋值呢?是成员变量给成员变量?还是成员变量给参数?亦或者是参数给成员变量?,到底是谁赋值给谁,自己也不清楚。

                2.三个对象都在调用Setday和printDay函数,但是这两个函数中没有任何有关对象的说明,setDate和printDate函数如何知道打印的是哪个对象的数据呢?

Java-简单认识类和对象,java,开发语言

                 这里就涉及了this引用。

        4.2 什么是this引用

                this引用指向当前对象(成员方法运行时调用该成员方法的对象),在成员方法中所有成员变量的操作,都是通过该引用去访问。只不过所有的操作对用户是透明的,即用户不需要来传递,编译器自动完成。

        public class Date {
                public int year;
                public int month;
                public int day;
                public void setDay(int year, int month, int day){
                this.year = year;
                this.month = month;
                this.day = day;
                }
                public void printDate(){
                System.out.println(this.year + "/" + this.month + "/" + this.day);
                }
        }

Java-简单认识类和对象,java,开发语言

        4.3 this引用的特性

                1. this的类型:对应类类型引用,即哪个对象调用就是哪个对象的引用类型。
                2. this只能在"成员方法"中使用。

                3. 在"成员方法"中,this只能引用当前对象,不能再引用其他对象。

                4.. this是“成员方法”第一个隐藏的参数,编译器会自动传递,在成员方法执行时,编译器会负责将调用成员方法对象的引用传递给该成员方法,this负责来接收。
 文章来源地址https://www.toymoban.com/news/detail-619403.html

到了这里,关于Java-简单认识类和对象的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java宝典-类和对象

    Java宝典更新啦!今天我们学习类和对象 在介绍类和对象之前,我们先了解一下什么是面向对象 面向对象编程又称Object Oriented Programming,简称OOP,我们听说过的Java,c++都是一门面向对象编程语言.面向过程更注重一件事完成的过程,而面向对象往往会省略一些细节. 举个例子: 如何把大

    2024年03月11日
    浏览(56)
  • 【Java】类和对象,封装

    目录 1.类和对象的定义  2.new 3.this引用 4.对象的构造及初始化 5.封装 //包的概念 //如何访问 6.static成员 7.代码块 8.对象的打印 对象:Java中一切皆对象。 类:一般情况下一个Java文件一个类,每一个类对应一个字节码文件(*.class)        1)字段 / 属性 / 成员变量:定

    2024年02月02日
    浏览(42)
  • 【Java|基础篇】类和对象

    本篇文章主要讲解了下面三个问题 类的定义和实例化 构造方法 this 众所周知面向过程和面向对象是两种重要的编程思想,而Java是属于面向对象一类的语言.面向对象(Object Oriented Programming,简称 “oop”). 面向对象有三大特性: 封装 继承和多态 .这些内容后面会详细介绍. 在

    2024年02月05日
    浏览(67)
  • 【Java初阶(五)】类和对象

    ❣博主主页: 33的博客❣ ▶文章专栏分类: Java从入门到精通◀ 🚚我的代码仓库: 33的代码仓库🚚 Java是一门纯面向对象的语言(Object Oriented Program,简称OOP),用面向对象的思想来涉及程序,更符合人们对事物的认知,对于大型程序的设计、扩展以及维护都非常友好,那么何为对

    2024年04月09日
    浏览(45)
  • 深度剖析java类和对象

    个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【JavaSE_primary】 在Java中,一切皆对象。 在Java中,我们通过类来描述对象。 类的定义:Java类是面向对象编程中的基本构建模块, 用于描述对象的属性(成员变量)和行

    2024年02月10日
    浏览(41)
  • Java中的类和对象

    在学习java语言的时候,经常听说java是一门 面向对象 的语言;在java里面也有 一切皆对象 这样的说法。那么到底什么是类,什么又是对象呢? 以洗衣服为例,给大家介绍面向对象和面向过程 1.1.1面向过程 我们传统的洗衣服得经历一下步骤: 注重的是洗衣服的过程 1.1.2面向对

    2024年04月28日
    浏览(38)
  • 【Java SE】类和对象(下)

    接着上文 目录 6. 封装  6.1 封装的概念  6.2 访问限定符 6.3 封装扩展之包 6.3.1 包的概念 6.3.2 自定义包 6.3.3 导入包中的类 6.3.4 包的访问权限控制举例 6.3.5 常见的包  7. static成员 7.1 static修饰成员变量 ​编辑 ​编辑 7.2 static修饰成员方法 8. 代码块 8.1 代码块概念以及分类  

    2024年02月05日
    浏览(41)
  • 【Java SE】类和对象(上)

    目录 一. 面向对象的初步认知 1.1 什么是面向对象 1.2 面向对象与面向过程 二. 类定义和使用 2.1 简单认识类  2.2 类的定义格式 三. 类的实例化  3.1 什么是实例化  3.2 实例化对象  四. this引用(重点)  4.1 为什么要有this引用  4.2 this的使用 4.3 this引用的特性 五.对象的构造及初

    2024年02月03日
    浏览(46)
  • 【Java SE】类和对象详解

    Java是一门纯面向对象的语言(Object Oriented Program,简称OOP),在面向对象的世界里,一切皆为对象。 面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情 。用面向对象的思想来涉及程序,更符合人们对事物的认知,对于大型程序的设计、扩展以及维护都非常

    2024年01月19日
    浏览(47)
  • 零基础入门 Java | 五分钟学会 Java 类和对象

    《 Java 零基础入门到精通 》 专栏持续更新中。通过本专栏你将学习到 Java 从 入门 到 进阶 再到 实战 的全套完整内容,所有内容均将集中于此专栏。无论是初学者还是有经验的开发人员,都可从本专栏获益。 订阅专栏后添加我微信或者进交流群,进群可找我领取 前端/Java

    2023年04月10日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包