【前端学java】语法练习-工具类的封装(13)

往期回顾:

前端中,我们经常会封装一些常用方法

js 复制代码
// utils.js
export function isEmpty(str){
	if(str === null || str ===  undefined || str === "") retrun true
  retrun false
}

便于在其他文件内引入使用

js 复制代码
// index.js
import { isEmpty } from "./utils.js"
let str = "1234"
let isHaveStr = isEmpty(str)

那么,java中我们如何封装一些方法方便使用呢?

语法封装的原则

Java中,没有前端这种"对象"概念、需要面向"类"来编程,因此,我们的方法自然是定义在一个类上。但是,使用类通常需要实例对象才能使用(new 一下),这很麻烦。

所以,我们的工具类在设计时,方法和属性 应该声明为静态的,可以直接使用。

我们复习一下类的静态成员静态方法的概念:

静态成员

静态变量是与类关联的变量,可以理解为类自身的属性,实例对象是木有的。静态变量可以用类名直接访问,而不需要创建类的实例。例如:

public class MyClass { static int count }

使用类名访问静态成员变量。例如:MyClass.count = 10;

静态方法

静态方法是与类关联的方法。与静态变量一样,无需创建类的实例即可访问静态方法。

使用类名调用静态方法。例如:MyClass.printMessage();


再者,工具类对外提供的属性或方法应该是公共的,所以用public声明。

封装示例

我们封装一个字符串的工具类 、提供空值判断生成随机字符串等功能

空值判断

java 复制代码
package 工具类;

public class My_Utils {
    public static void main(String[] args) {

    }
}

// 封装一个字符串工具类

class StringUtil {
    // 非空判断
    public static boolean isEmpty(String str){
        if (str == null || "".equals(str.trim())){
            return  true;
        }
        return  false;
    }
}

这个示例代码非常简单,里面有几个小概念,我们先熟悉下

  • 在Java中,=== 符号并不存在 、也没有undefined这个概念
  • Java使用 == 操作符来比较两个值是否相等,当比较两个基本数据类型(如 int、char、double 等时,== 操作符的效果是相同的
  • 在比较两个对象 的内容是否相等时,不能使用 == 操作符 !在Java中,对象比较的是它们的引用,而不是它们的值。在这种情况下,你应该使用 ****.equals() ****方法来比较两个对象的内容
  • trim()方法用于删除字符串开头和结尾的空白字符(包括空格、制表符、换行符等)。这个方法是从java.lang.String类中继承的。
  • String类的equals()方法被用于比较两个字符串是否相等。这个方法会判断两个字符串的内容是否完全相同。

我们验证下

嗯,非常丝滑~

生成随机字符串

java中生成uuid非常简单,借助UUID这个类就可以

java 复制代码
package 工具类;

import java.util.UUID;

public class My_Utils {
    public static void main(String[] args) {
        System.out.println(StringUtil.makeString());  
        // 打印结果:ec2443d4-da6f-48d8-8055-1fa1e67eec8d
    }
}
// 封装一个字符串工具类
class StringUtil {
    public static String makeString(){
        return UUID.randomUUID().toString();
    }
}
相关推荐
冼紫菜5 分钟前
[特殊字符]CentOS 7.6 安装 JDK 11(适配国内服务器环境)
java·linux·服务器·后端·centos
秋野酱1 小时前
Spring Boot 项目的计算机专业论文参考文献
java·spring boot·后端
香饽饽~、2 小时前
【第二篇】 初步解析Spring Boot
java·spring boot·后端
你是狒狒吗2 小时前
消息队列了解一哈
后端
Chandler243 小时前
Go语言 GORM框架 使用指南
开发语言·后端·golang·orm
蚂蚁在飞-4 小时前
Golang基础知识—cond
开发语言·后端·golang
程序员爱钓鱼10 小时前
匿名函数与闭包(Anonymous Functions and Closures)-《Go语言实战指南》原创
后端·golang
言之。11 小时前
Go 语言中接口类型转换为具体类型
开发语言·后端·golang
diving deep12 小时前
XML简要介绍
xml·java·后端