Search code examples
javavariablessyntaxprefix

Java variables 'm' and 'p' prefixes


What are the purposes and meanings of this syntax? I'm seeing lines like private Object mSelectedOperationRow; and mMessageService = pMessageService;. More complete code below.

public class SearchResponseBean extends BaseBean implements Serializable,
    SearchResponse {

@Autowired
private SearchLifecycleService mSearchLifecycleService;

@Autowired
private ConfigurationServiceImpl mConfig;

@Value("#{sessionBean}")
private Session session;

@Value("#{searchRequestBean}")
private SearchRequest searchRequest;

@Value("#{searchResponseFilterByBean}")
private SearchResponseFilterBy searchResponseFilterBy;

@Value("#{searchHistoryBean}")
private HistoryBean<SearchHistoryItem> historyBean;

@Autowired
private SearchResponseDataModelFactory mSearchResponseDataModelFactory;

private int mCount;
private DataModel mDataModel;
private SearchPerspective mSearchPerspective;
private Operation mSelectedOperation;
private Object mSelectedOperationRow;
private List mSelectedList;
private List<String> mAvailableOperations;
private List mFilteredList;
private boolean mRelatedDocSearch;

private transient MessageService mMessageService;

public SearchResponseBean() {
    mMessageService = new MessageServiceImpl();
}

public SearchResponseBean(MessageService pMessageService) {
    mMessageService = pMessageService;
}

protected void init() {
    String THIS_METHOD_NAME = "init";
    mFilteredList = null;
    mSelectedList = null;
    mSelectedOperationRow = null;
    mSelectedOperation = null;
    mCount = -1;
    mDataModel = null;
    mSearchPerspective = null;
    mAvailableOperations = null;
    mRelatedDocSearch = false;
    logger.debug(getClass(), THIS_METHOD_NAME,
            "Initialized with null/defaults. ");
}

Solution

  • This is not a syntax thing, its a project guideline thing. Some projects have naming conventions for variables, members, arguments ... and more.

    • m simply stands from member,
    • p stands for parameter.

    Its meant to make it easier to distinguish between local variable, members and method arguments.