zoukankan      html  css  js  c++  java
  • Java之枚举

    package com.anby;
     
    public class mode {
    public enum student{
    man,woman;
     
    }
    public enum student1{
    man("男"),woman("女");
     
    //枚举中不能直接定义成员,必须要首先定义枚举常量才能生命枚举中的成员
    //也就是说,枚举相当于多例模式,只是简化了书写
    //枚举常量 默认 被static finaly修饰
     
    private String value;
    private student1(String str)
    {
    this.value=str;
    }
     
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
    Person man=Person.man;
    Person woman=Person.woman;
    Person woman2=Person.woman;
     
    System.out.println(man);
    System.out.println(woman);
    System.out.println(woman2); //此时打印的woman=woman2
     
     
     
    //这里有点绕。。
    //调用的是子类的方法
       System.out.println(man.getAge());
    System.out.println(woman.getAge());
     
    }
     
    }
     
    abstract class    Person
    {
    //私有化构造函数,通过内部成员进行初始化--传男 初始化男人,传女 初始化女人
     
     
    //此时,对男女的年龄进行设置(通过内部类),在本类中提供一个抽象方法,用于外部访问该属性
     
     
    //通过内部类,对年龄进行设置,外层类的抽象方法只是为了让本类型的实例进行访问
    public static Person man=new Person("男"){   //这里也说明了,抽象类的内部类,可以对外部抽象类调用构造函数
      public   int getAge()
      {
      return 20;
      }
    };
     
    public static Person woman=new Person("女"){
      public   int getAge()
      {
      return 22;
      }
    };
     
     
    private String value;
        private  Person(String value)
        {
        this.value=value;
        }
        public abstract  int getAge(); //该抽象方法只是为了让实例调用该内部类中实现的方法
        
    }
  • 相关阅读:
    Qt之QFileSystemWatcher
    Qt之qSetMessagePattern
    物联网操作系统HelloX V1.80测试版发布
    CoreOS Linux available in China
    等火车
    HTTP 简介
    建造模式Builder
    MariaDB exists 学习
    javascript 中 typeof 的使用
    Java字符串null相加
  • 原文地址:https://www.cnblogs.com/anbylau2130/p/3041360.html
Copyright © 2011-2022 走看看