详解java自定义类

 更新时间:2020年06月05日 16:37:58   作者:菜鸟小于  
这篇文章主要介绍了java自定义类的概念以及用法,文中讲解非常详细,实例代码帮助大家更好的理解,感兴趣的朋友可以参考下

引用数据类型(类)

引用数据类型分类

提到引用数据类型(类),其实我们对它并不陌生,之前使用过的Scanner类、Random类。

我们可以把类的类型为两种:

       第一种,Java为我们提供好的类,如Scanner类,Random类等,这些已存在的类中包含了很多的方法与属性,可供我们使用。

       第二种,我们自己创建的类,按照类的定义标准,可以在类中包含多个方法与属性,来供我们使用。

这里我们主要介绍第二种情况的简单使用。

自定义数据类型概述

我们在Java中,将现实生活中的事物抽象成了代码。这时,我们可以使用自定义的数据类型(类)来描述(映射)现实生活中的事物。

类,它是引用数据类型,与之前学习的所有引用数据类型相同,自定义类也是一种数据类型。只是自定义类型并非Java为我们预先提供好的类型,而是我们自己定义的一种引用数据类型用来描述一个事物。

类的定义与使用

java代码映射成现实事物的过程就是定义类的过程。

我们就拿一部手机进行分析,它能用来做什么呢?它可以打电话,上网,聊微信等,这些就是手机所提供的功能,也就是方法;手机也有它的特征,如颜色、尺寸大小、品牌型号等,这些就是手机的特征,也就是属性。

目前,我们只关注类中的属性.

类的定义格式

创建java文件,与类名相同
public class 类名{
  数据类型 属性名称1;
  数据类型 属性名称2;
  …
}

通过类的定义格式,来进行手机类的描述,如下所示

public class Phone {
  /*
   * 属性
   */
  String brand;// 品牌型号
  String color;// 颜色
  double size; // 尺寸大小
}

上述代码,就是创建一个类的的过程,类的名称我们给起名为Phone,类中包含了三个属性(brand品牌型号、color颜色、size尺寸大小)。注意,类中定义的属性没有个数要求。

类的使用格式

Phone类定义好后,我们就可以使用这个类了,使用方式和使用引用数据类型Scanner类相似。格式如下:

导包:我们将所有的类放到同一个文件夹下,可以避免导包。

创建对象:数据类型  变量名 = new 数据类型();

调用方法:目前我们定义的自定义类不涉及方法,只是属性(自定义类中的方法部分在面向对象部分讲解)

访问属性:变量名.属性 (这是当前的方式,后期会采取调用方法的方式替代掉直接访问的方式来完成对属性的访问。)

当有了Phone数据类型的变量后,我们就可以使用Phone类中的属性了。对属性的访问我们来演示一下,如下所示:

public class Test {
  public static void main(String[] args) {
    //定义了一个Phone类型的变量p
    Phone p = new Phone();
    /*
     * 通过p,使用Phone中的属性
     */
    //访问p中的brand品牌属性
    p.brand = "苹果X"; 
    //访问p中的color颜色属性
    p.color = "白色"; 
    //访问p中的size尺寸大小属性
    p.size = 6.5; 

    System.out.println("手机品牌为" + p.brand );
    System.out.println("手机颜色为" + p.color );
    System.out.println("手机尺寸大小为" + p.size );
  }
}

自定义类型注意事项与内存图

上述代码中,通过类Phone创建出来的变量p,它相当于我们生活中的盒子,里面包含了它能够使用的属性。

       通过 p.属性名 就可以对属性进行操作

       与引用类型数组类似,引用类型的自定义类型的变量,直接变量时,结果为对象地址值,这里可以通过内存图简单解释。

以上就是详解java自定义类的详细内容,更多关于java自定义类的资料请关注脚本之家其它相关文章!

相关文章

  • Mybatis调用SQL Server存储过程的实现示例

    Mybatis调用SQL Server存储过程的实现示例

    在软件开发过程中,经常会使用到存储过程,本文就来介绍一下Mybatis调用SQL Server存储过程的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2024-01-01
  • 详解Java单元测试之Junit框架使用教程

    详解Java单元测试之Junit框架使用教程

    单元测试就是针对最小的功能单元编写测试代码,Junit是使用Java语言实现的单元测试框架,它是开源的,Java开发者都应当学习并使用Junit编写单元测试。本文就来讲讲Junit框架的使用教程,需要的可以参考一下
    2022-05-05
  • java实现背单词程序

    java实现背单词程序

    这篇文章主要为大家详细介绍了java实现背单词程序,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • maven-assembly-plugin报红无法加载报错:Plugin ‘maven-assembly-plugin:‘ not found

    maven-assembly-plugin报红无法加载报错:Plugin ‘maven-assembly-plugin

    maven-assembly-plugin是一个常用的打包插件,但是在使用过程中经常会遇到各种报错,本文就来介绍一下maven-assembly-plugin报红无法加载报错,具有一定的参考价值
    2023-08-08
  • Java中一个线程执行死循环有什么后果

    Java中一个线程执行死循环有什么后果

    这篇文章主要为大家详细介绍了Java中一个线程执行死循环有什么后果,当一个线程在执行死循环时会影响另外一个线程吗,下面为大家揭晓
    2016-05-05
  • Java超全面梳理内部类的使用

    Java超全面梳理内部类的使用

    说起内部类这个词,想必很多人都不陌生,但是又会觉得不熟悉。原因是平时编写代码时可能用到的场景不多,用得最多的是在有事件监听的情况下,并且即使用到也很少去总结内部类的用法。今天我们就来一探究竟
    2022-04-04
  • 解决Nacos集群启动失败:java版本问题

    解决Nacos集群启动失败:java版本问题

    这篇文章主要介绍了解决Nacos集群启动失败:java版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Java实现OJ多组测试数据的输入方法

    Java实现OJ多组测试数据的输入方法

    今天小编就为大家分享一篇Java实现OJ多组测试数据的输入方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-07-07
  • 如何实现Java监听器详解

    如何实现Java监听器详解

    今天带大家了解Java监听器是如何实现的及实现原理是什么,文中有非常详细的说明,对正在学习的小伙伴们很有帮助,需要的朋友可以参考下
    2021-06-06
  • Java编程调用微信接口实现图文信息推送功能

    Java编程调用微信接口实现图文信息推送功能

    这篇文章主要介绍了Java编程调用微信接口实现图文信息等推送功能,涉及java微信图文信息推送接口调用及相关文件、字符串编码转换相关操作技巧,需要的朋友可以参考下
    2017-08-08

最新评论