返回顶部
首页 > 资讯 > 精选 >JavaSE的类和对象是什么
  • 355
分享到

JavaSE的类和对象是什么

2023-06-29 17:06:26 355人浏览 泡泡鱼
摘要

这篇文章主要介绍了JavaSE的类和对象是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.基本概念首先我们需要弄清楚几个概念:面向对象是什么、类是什么、对象又是什么?还

这篇文章主要介绍了JavaSE的类和对象是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

    1.基本概念

    首先我们需要弄清楚几个概念:面向对象是什么、类是什么、对象又是什么?还是逐个来说

    1.1面向对象

    我们常说Java是面向对象的语言,C语言是面向过程的语言,那面向对象是什么,它和面向过程的区别在哪?

    面向对象是解决问题的一种思想,其核心是依靠对象之间的交互来解决事情

    至于面向对象和面向过程的区别,假设现在有一道数学题:

    面向过程:你自己进行手算,你需要关注套用什么公式,如何化简、哪些条件组合可以推出什么结论等,中间有一个环节出错都不行

    面向对象:你把问题给计算机,让计算机解决,我们关注的只是人和计算机这两个对象如何交互

    这么看面向对象好像比面向过程更高级,但其实二者没有好与坏之分,它们都有自己专门的应用场景,就比如数学考试的时候题目你就只能自己写( ̄▽ ̄)

    1.2类和对象

    • 类:对一个实体的描述

    • 对象:类的实例化

    假设你要设计某个东西,类就是你所画的图纸,对象则是你通过图纸造出来的实物;一个类可以产生多个对象

    2.类的定义及使用

    2.1定义

    在定义类的时候需要使用一个关键字:class

    具体语法如下:

    class ClassName {    field;    method;}
    • ClassName:类名

    • field:成员变量

    • method:成员方法

    我们现在定义一个类Book,里面成员变量包括书名、作者和价格,成员方法就是打印所有成员变量

    JavaSE的类和对象是什么

    文章后面的概念都会围绕这个类来进行讲解 

    2.2类的实例化

    在main方法中实例化一个对象用到的关键字:new

    代码如下:

    Book book1 = new Book();

    之后便可以使用“.”来访问类中的成员变量和成员方法,如下:

    JavaSE的类和对象是什么

    之前我们说过Java中的变量都要初始化,类里面的成员变量也不例外,如果成员变量未初始化,那么默认是对应的数据类型的0值

    整型变量是0,浮点数是0.0,布尔类型为false,引用类型为null,char为'\u0000' 

    3.this引用

    3.1访问成员变量

    我们现在往类里面再增加一个方法setBook,用这个方法来对成员变量进行初始化

    public void setBook(String name,String author,int price) {        name=name;        author=author;        price=price;    }

    我们再来看一下结果:

    JavaSE的类和对象是什么

     为什么全部都是0值?

    其原因在于方法的参数名和成员变量名相等,形参因为数局部变量,所以程序认为方法里面的name等变量全部都是形参

    我们只需要将等号左边的变量加上this就可以解决这个问题

    JavaSE的类和对象是什么

    this代表的是当前对象的引用(谁调用了this,谁就是当前对象)

    上图中book1调用的setBook方法,所以 book1是当前对象,方法中的this.name等变量就相当于告诉程序这个不是方法的形参,而是对象book1的成员变量

    3.2访问成员方法

    这个比较好理解,就是在方法里面引用类中的其它方法,但注意一点:引用不能成环

    假设setBook里面引用了show方法,那么show方法里面就不能再引用setBook,否则就乱套了

    还有一点需要补充:

    上面提到过一个类可以产生多个对象,那么多个对象调用同一个方法,程序如何分辨是哪个对象调用的?

    依旧是this引用

    类中的方法起始都有一个隐式的this参数,通过this知道是哪个对象调用的方法,也就是说setBook方法其实是有4个参数,如下:

    public void setBook(Book this,String name,String author,int price) {        this.name=name;        this.author=author;        this.price=price;    }

    除了访问成员方法外,this还可以调用本类其它构造方法,这一点在构造方法中再介绍

    3.3this引用的特性

    只能在成员方法中使用

    是成员方法的第一个隐藏的参数

    在成员方法中只能引用当前对象(在对象Book1中使用this就只能引用Book1,不能引用对象Book2)

    为对应类的类型引用,即哪个对象调用就是哪个对象的引用类型

    4.构造方法

    构造方法也是成员方法,但它比较特殊,对象的初始化除了在main方法中使用“.”一个一个初始化外还可以使用构造方法

    在实例化一个对象的时候一定会经过两个步骤:

    • 分配内存

    • 调用合适的构造方法

    如果用户没有写构造方法,编译器会默认提供一个不带参数的构造方法,写了就调用用户自己写的构造方法

    4.1构造方法的特点

    • 方法名要和类名相同

    • 没有返回值,即使是写void也不行

    • 在整个对象的声明周期内只能调用一次

    • 可以重载

    我们写一个构造方法如下:

     public Book(String name, String author, int price) {        this.name = name;        this.author = author;        this.price = price;    }

    那么初始化对象如下:

    JavaSE的类和对象是什么

    4.2this在构造方法中使用

    上面提到构造方法可以重载,那么我们再写一个没有参数的构造方法

     public Book() {       }

    this在构造方法中可以调用其它的构造方法,比如我在没有参数的构造方法中调用上面的有三个参数的构造方法

    JavaSE的类和对象是什么

    注意:

    • this同样不能成环

    • this必须放在构造方法的第一行

    感谢你能够认真阅读完这篇文章,希望小编分享的“JavaSE的类和对象是什么”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

    --结束END--

    本文标题: JavaSE的类和对象是什么

    本文链接: https://lsjlt.com/news/325908.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • JavaSE的类和对象是什么
      这篇文章主要介绍了JavaSE的类和对象是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.基本概念首先我们需要弄清楚几个概念:面向对象是什么、类是什么、对象又是什么?还...
      99+
      2023-06-29
    • JavaSE的类和对象你真的了解吗
      目录1.基本概念1.1面向对象1.2类和对象2.类的定义及使用2.1定义2.2类的实例化3.this引用3.1访问成员变量3.2访问成员方法3.3this引用的特性4.构造方法4.1...
      99+
      2024-04-02
    • JAVASE---抽象类和接口
      抽象类 抽象类的概念 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 抽象类语法 在Java中,一个类如果被 abst...
      99+
      2023-09-21
      java 开发语言
    • C++中类和对象是什么
      这篇文章给大家分享的是有关C++中类和对象是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。类和对象<上>面向对象一直以来都是面向过程编程比如C语言,直到七十年代面向过程编程在开发大型程序时表现出不...
      99+
      2023-06-29
    • python对象和类的关系是什么
      在Python中,类是对象的蓝图或模板。对象是类的实例化,即通过类创建的具体实体。类定义了对象的属性(变量)和行为(方法)。它可以看...
      99+
      2023-08-14
      python
    • C++类和对象到底是什么
      目录1、C++ 中的类2、面向对象编程(Object Oriented Programming,OOP)1、C++ 中的类 C++ 中的类(Class)可以看做C语言中结构体(Str...
      99+
      2024-04-02
    • 解析JavaSe的抽象类和接口
      目录1. 抽象类和抽象方法2. 相关面试题1、抽象类必须要有抽象方法吗?2、普通类和抽象类有哪些区别?3、抽象类能使用 final 修饰吗?3. 接口3.1 接口中的常量3.2 接口...
      99+
      2024-04-02
    • python中类和对象的关系是什么
      在Python中,类是对象的蓝图或模板,而对象是类的实例。类定义了对象的属性和方法。通过创建一个对象,可以使用类中定义的属性和方法。...
      99+
      2023-09-15
      python
    • 什么是javascript的对象类型
      本篇内容介绍了“什么是javascript的对象类型”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
      99+
      2024-04-02
    • C#的对象类型是什么
      本文小编为大家详细介绍“C#的对象类型是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“C#的对象类型是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。对象(Object)类型对象(Object)类型&nb...
      99+
      2023-06-17
    • java类和对象的基本概念是什么
      Java类是面向对象编程的基本单位,是一种用于描述对象特征和行为的模板。它可以包含属性(成员变量)和方法(成员函数),用来定义对象的...
      99+
      2023-09-16
      java
    • css伪类和伪对象的区别是什么
      本文小编为大家详细介绍“css伪类和伪对象的区别是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“css伪类和伪对象的区别是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。伪类是用于向某些选择器添加特殊效果...
      99+
      2023-07-04
    • uml类图和对象图的概念是什么
      UML(Unified Modeling Language)类图是一种用于描述系统中类及其关系的图形化表示方法。它是一种静态结构图,...
      99+
      2023-10-18
      uml
    • java中什么是类,什么是对象
      类就是具备某些共同特征的实体的集合,它是一种抽象的数据类型,它是对所具有相同特征实体的抽象。在面向对象的程序设计语言中,类是对一类“事物”的属性与行为的抽象。对象就是一个真实世界中的实体,对象与实体是一一对应关系的,意思就是现实世界的每一个...
      99+
      2020-06-27
      java入门 java 对象
    • c++中什么是类,什么是对象
      c++kquote>类在 c++ 中代表对象集合的模板,定义了对象的属性(数据成员)和行为(成员函数)。对象是类的实例,拥有类中的所有数据成员和成员函数,由类创建,并使用与类相同的...
      99+
      2024-05-08
      c++
    • javase和JavaScript的概念是什么
      这篇文章主要介绍了javase和JavaScript的概念是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇javase和JavaScript的概念是什么文章都会有所收获,下...
      99+
      2024-04-02
    • javase和javaee的区别是什么
      JavaSE(Java Standard Edition)是Java语言的标准版,提供了Java编程语言的核心功能和库,主要用于开发...
      99+
      2023-08-30
      java
    • javase是什么
      JavaSE可以说是Java中的基础部分,也是运行JAVA程序不可缺少的环境,Java SE 是Java平台标准版的简称,用于开发和部署桌面、服务器以及嵌入设备和实时环境中的Java应用程序。...
      99+
      2024-04-02
    • java类对象和实例对象有什么区别
      在Java中,一个类是一个模板或者蓝图,它定义了对象的属性和行为。而一个类对象是指类本身,可以通过类名访问静态属性和方法。 另一方面...
      99+
      2023-10-24
      java
    • 零基础学Java之什么是对象和类
      这篇文章主要讲解了“零基础学Java之什么是对象和类”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“零基础学Java之什么是对象和类”吧!01、面向过程和面向对象三妹是不是要问,什么是 OOP...
      99+
      2023-06-15
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作