集册 Java实例教程 在需要其功能的类中创建一个内部类。

在需要其功能的类中创建一个内部类。

欢马劈雪     最近更新时间:2020-01-02 10:19:05

539
提示:您可在线编辑运行本教程的实例 - 运行实例,去试试!
在需要其功能的类中创建一个内部类。

import java.util.ArrayList;

import java.util.List;
/*
 from nowjava - 时代Java 
*/


public class Main {


  private Player player;

  private List<Player> playerList;

  private int size = 4;


  /**

   * Inner class representing a Player object

   */

  class Player {


    private String firstName = null;

    private String lastName = null;

    private String position = null;

    private int status = -1;
/** 来 自 时 代 J a v a 公 众 号 - N o w J a v  a . c o m**/

    public Player() {

    }


    public Player(String position, int status) {

      this.position = position;

      this.status = status;

    }


    public String playerString() {

      return getFirstName() + " " + getLastName() + " - " + getPosition();

    }


    /**

     * @return the firstName

     */

    public String getFirstName() {

      return firstName;

    }


    /**

     * @param firstName

     *          the firstName to set

     */

    public void setFirstName(String firstName) {

      this.firstName = firstName;

    }


    /**

     * @return the lastName

     */

    public String getLastName() {

      return lastName;

    }


    /**

     * @param lastName

     *          the lastName to set

     */

    public void setLastName(String lastName) {

      this.lastName = lastName;

    }


    /**

     * @return the position

     */

    public String getPosition() {

      return position;

    }


    /**

     * @param position

     *          the position to set

     */

    public void setPosition(String position) {

      this.position = position;

    }


    /**

     * @return the status

     */

    public int getStatus() {

      return status;

    }


    /**

     * @param status

     *          the status to set

     */

    public void setStatus(int status) {

      this.status = status;

    }


    @Override

        public String toString(){

            return this.firstName + " " + this.lastName + " - "+ this.position;

        }

  }


  /**

   * Inner class that constructs the Player objects and adds them to an array

   * that was declared in the outer class;

   */

  public Main() {


    final int ACTIVE = 0;


    // In reality, this would probably read records from a database using

    // a loop...but for this example we will manually enter the player data.

    playerList = new ArrayList();

    playerList.add(constructPlayer("A", "Z", "Right Wing", ACTIVE));

    playerList.add(constructPlayer("B", "X", "Left Wing", ACTIVE));

    playerList.add(constructPlayer("C", "Y", "Center", ACTIVE));

    playerList.add(constructPlayer("D", "W", "Defense", ACTIVE));

    playerList.add(constructPlayer("E", "G", "Goalie", ACTIVE));

  }


  public Player constructPlayer(String first, String last, String position,

      int status) {

    Player player = new Player();

    pl
展开阅读全文