org.apache.lucene.search

## Class Query

- java.lang.Object
- - org.apache.lucene.search.Query

All Implemented Interfaces:
  Cloneable

Direct Known Subclasses:
  BooleanQuery, ConstantScoreQuery, DisjunctionMaxQuery, FilteredQuery, MatchAllDocsQuery, MultiPhraseQuery, MultiTermQuery, PhraseQuery, SpanQuery, TermQuery

    public abstract class Query
    extends Object
    implements Cloneable

The abstract base class for queries.

Instantiable subclasses are:

- `TermQuery`
- `BooleanQuery`
- `WildcardQuery`
- `PhraseQuery`
- `PrefixQuery`
- `MultiPhraseQuery`
- `FuzzyQuery`
- `RegexpQuery`
- `TermRangeQuery`
- `NumericRangeQuery`
- `ConstantScoreQuery`
- `DisjunctionMaxQuery`
- `MatchAllDocsQuery`

See also the family of `Span Queries` and additional queries available in the Queries module

### Constructor Summary

Constructors
Constructor and Description
`Query()`

### Method Summary

Methods
`Query` `clone()` Returns a clone of this query.
`Weight` `createWeight(IndexSearcher searcher)` Expert: Constructs an appropriate Weight implementation for this query.
`boolean` `equals(Object obj)`
`void` `extractTerms(Set<Term> terms)` Expert: adds all terms occurring in this query to the terms set.
`float` `getBoost()` Gets the boost for this clause.
`int` `hashCode()`
`Query` `rewrite(IndexReader reader)` Expert: called to re-write queries into primitive queries.
`void` `setBoost(float b)` Sets the boost for this query clause to `b`.
`String` `toString()` Prints a query to a string.
`abstract String` `toString(String field)` Prints a query to a string, with `field` assumed to be the default field and omitted.

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### Query

    public Query()

### Method Detail

#### setBoost

    public void setBoost(float b)

Sets the boost for this query clause to `b`. Documents matching this clause will (in addition to the normal weightings) have their score multiplied by `b`.

#### getBoost

    public float getBoost()

Gets the boost for this clause. Documents matching this clause will (in addition to the normal weightings) have their score multiplied by `b`. The boost is 1.0 by default.

#### toString

    public abstract String toString(String field)

Prints a query to a string, with `field` assumed to be the default field and omitted.

#### toString

    public String toString()

Prints a query to a string.

Overrides:
  `toString` in class `Object`

#### createWeight

    public Weight createWeight(IndexSearcher searcher)
                        throws IOException

Expert: Constructs an appropriate Weight implementation for this query.

Only implemented by primitive queries, which re-write to themselves.

Throws:
  `IOException`

#### rewrite

    public Query rewrite(IndexReader reader)
                  throws IOException

Expert: called to re-write queries into primitive queries. For example, a PrefixQuery will be rewritten into a BooleanQuery that consists of TermQuerys.

Throws:
  `IOException`

#### extractTerms

    public void extractTerms(Set<Term> terms)

Expert: adds all terms occurring in this query to the terms set. Only works if this query is in its `rewritten` form.

Throws:
  `UnsupportedOperationException` - if this query is not yet rewritten

#### clone

    public Query clone()

Returns a clone of this query.

Overrides:
  `clone` in class `Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `Object`

#### equals

    public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`