⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 classmemberspecification.java

📁 j2me 混淆包,用于混淆j2me的原代码用的
💻 JAVA
字号:
/* $Id: ClassMemberSpecification.java,v 1.2 2004/08/15 12:39:30 eric Exp $ * * ProGuard -- shrinking, optimization, and obfuscation of Java class files. * * Copyright (c) 2002-2004 Eric Lafortune (eric@graphics.cornell.edu) * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free * Software Foundation; either version 2 of the License, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along * with this program; if not, write to the Free Software Foundation, Inc., * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */package proguard;/** * This class stores a specification of class members. The specification is * template-based: the class member names and descriptors can contain wildcards. * * @author Eric Lafortune */public class ClassMemberSpecification{    public int    requiredSetAccessFlags;    public int    requiredUnsetAccessFlags;    public String name;    public String descriptor;    /**     * Creates a new option to keep the specified class member(s).     */    public ClassMemberSpecification()    {        this(0,             0,             null,             null);    }    /**     * Creates a new option to keep the specified class member(s).     *     * @param requiredSetAccessFlags   the class access flags that must be set     *                                 in order for the class to apply.     * @param requiredUnsetAccessFlags the class access flags that must be unset     *                                 in order for the class to apply.     * @param name                     the class member name. The name may be     *                                 null to specify any class member or it     *                                 may contain "*" or "?" wildcards.     * @param descriptor               the class member descriptor. The     *                                 descriptor may be null to specify any     *                                 class member or it may contain     *                                 "**", "*", or "?" wildcards.     */    public ClassMemberSpecification(int    requiredSetAccessFlags,                                 int    requiredUnsetAccessFlags,                                 String name,                                 String descriptor)    {        this.requiredSetAccessFlags   = requiredSetAccessFlags;        this.requiredUnsetAccessFlags = requiredUnsetAccessFlags;        this.name                     = name;        this.descriptor               = descriptor;    }    // Implementations for Object.    public boolean equals(Object object)    {        if (this.getClass() != object.getClass())        {            return false;        }        ClassMemberSpecification other = (ClassMemberSpecification)object;        return            (this.requiredSetAccessFlags   == other.requiredSetAccessFlags  ) &&            (this.requiredUnsetAccessFlags == other.requiredUnsetAccessFlags) &&            (this.name       == null ? other.name       == null : this.name.equals(other.name)            ) &&            (this.descriptor == null ? other.descriptor == null : this.descriptor.equals(other.descriptor));    }    public int hashCode()    {        return            requiredSetAccessFlags                           ^            requiredUnsetAccessFlags                         ^            (name       == null ? 0 : name.hashCode()      ) ^            (descriptor == null ? 0 : descriptor.hashCode());    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -