java编程之枚举类

简介: 一个类中的对象 认为个数是有限且固定的,可以将每一个对象一一列举出来 1.试一试若没有枚举类型的时候,如何手动设计 (静态常量 单例模式) Day(类 当做描述星期 7个对象) private构造方法 public static final属性 = new 2.JDK1.5版本之后可以直接定义enum类型 我们自己定义的enum类型直接默认继承Enum(java.lang包) 我们自己定义的enum类型不能再写extends 但是可以实现 Enum类型

前言解析

   数据类型

   基本 8个

   引用 数组[]  类class 抽象类abstract class  

   接口interface 枚举enum 注解@interface

枚举类

   一个类中的对象 认为个数是有限且固定的,可以将每一个对象一一列举出来

   1.试一试若没有枚举类型的时候,如何手动设计

   (静态常量 单例模式)

   Day(类 当做描述星期 7个对象)

   private构造方法

   public static final属性 = new

   2.JDK1.5版本之后可以直接定义enum类型

我们自己定义的enum类型直接默认继承Enum(java.lang包)

我们自己定义的enum类型不能再写extends 但是可以实现

Enum类型

有两个属性

name----->枚举对象的名字     name()获取name属性

ordinal--->枚举对象在类中罗列的顺序  类似index  也从0开始   ordinal()获取序号

一些常用的方法

valueOf()   通过给定的name获取对应的枚举对象

values()     获取全部的枚举对象  ---> 返回一个数组  Day[]

compareTo()   可以比较两个枚举对象   int

toString()   由于这个方法没有final修饰  可以覆盖(重写)

   3.switch内部判断枚举的应用

   4.我们也可以在enum中描述自己的一些属性或方法

   必须在enum类中第一行 描述一下枚举的样子 最后需要分号结束;

   可以定义自己的属性

   类创建的过程中  帮我们创建枚举类型的对象

   需要给枚举类型提供对应样子的构造方法  构造方法只能private修饰  可以重载

总结:

   截止到现在所有面向对象的编程思想都更过啦

   带你们回顾一下:

如何描述类

 类成员四个  方法

如何创建对象

 执行类成员

类之间的关系

 is-a  has-a  use-a

类中特性

 权限   特征

类之间的设计问题

 设计模式   单例  策略  适配器

类中的一些细节

 内部类  枚举类

内存机制问题

 类创建在哪儿   对象创建在哪里   继承关系   静态成员   方法执行

 栈内存--->Person p = new Person();---->堆内存    方法区---类模板

 栈内存--->创建开始 用完立即回收   StackOverflowError

 方法区--->类   常量   静态   只有一份回收不了

 堆内存--->new创建的对象  Garbage Collection垃圾回收器  GC

Runtime类之中提供了几个管理内存的方法

 maxMemory

 totalMemory

 freeMemory

 堆内存溢出错误OutOfMemoryError

Object类中有一个finalize方法  如果重写也能看见对象回收

GC系统提供的一个线程    回收算法

目录
相关文章
|
1天前
|
Java
深入理解Java并发编程:线程池的应用与优化
【5月更文挑战第18天】本文将深入探讨Java并发编程中的重要概念——线程池。我们将了解线程池的基本概念,应用场景,以及如何优化线程池的性能。通过实例分析,我们将看到线程池如何提高系统性能,减少资源消耗,并提高系统的响应速度。
11 5
|
1天前
|
消息中间件 安全 Java
理解Java中的多线程编程
【5月更文挑战第18天】本文介绍了Java中的多线程编程,包括线程和多线程的基本概念。Java通过继承Thread类或实现Runnable接口来创建线程,此外还支持使用线程池(如ExecutorService和Executors)进行更高效的管理。多线程编程需要注意线程安全、性能优化和线程间通信,以避免数据竞争、死锁等问题,并确保程序高效运行。
|
1天前
|
安全 Java 容器
深入理解Java并发编程:线程安全与性能优化
【5月更文挑战第18天】随着多核处理器的普及,并发编程变得越来越重要。Java提供了丰富的并发编程工具,如synchronized关键字、显式锁Lock、原子类、并发容器等。本文将深入探讨Java并发编程的核心概念,包括线程安全、死锁、资源竞争等,并分享一些性能优化的技巧。
|
1天前
|
安全 Java 开发者
Java中的多线程编程:理解与实践
【5月更文挑战第18天】在现代软件开发中,多线程编程是提高程序性能和响应速度的重要手段。Java作为一种广泛使用的编程语言,其内置的多线程支持使得开发者能够轻松地实现并行处理。本文将深入探讨Java多线程的基本概念、实现方式以及常见的并发问题,并通过实例代码演示如何高效地使用多线程技术。通过阅读本文,读者将对Java多线程编程有一个全面的认识,并能够在实际开发中灵活运用。
|
2天前
|
Java 编译器
Java并发编程中的锁优化策略
【5月更文挑战第18天】在Java并发编程中,锁是一种常用的同步机制,用于保护共享资源的访问。然而,不当的锁使用可能导致性能问题和死锁风险。本文将探讨Java中锁的优化策略,包括锁粗化、锁消除、锁分离和读写锁等技术,以提高并发程序的性能和可靠性。
|
2天前
|
自然语言处理 Java API
Java 8的Stream API和Optional类:概念与实战应用
【5月更文挑战第17天】Java 8引入了许多重要的新特性,其中Stream API和Optional类是最引人注目的两个。这些特性不仅简化了集合操作,还提供了更好的方式来处理可能为空的情况,从而提高了代码的健壮性和可读性。
24 7
|
2天前
|
Java 编译器
Java 并发编程中的锁优化策略
【5月更文挑战第17天】在 Java 并发编程中,锁是一种常见的同步机制,用于保护共享资源的访问。然而,不当使用锁可能导致性能问题和死锁风险。本文将探讨 Java 中的锁优化策略,包括锁粗化、锁消除、锁降级以及读写锁等技术,以提高并发程序的性能和可靠性。
|
2天前
|
Java 编译器
Java并发编程中的锁优化策略
【5月更文挑战第17天】在Java并发编程中,锁是一种常见的同步机制,用于保护共享资源。然而,使用不当的锁可能导致性能下降和死锁等问题。本文将探讨Java中锁的优化策略,包括锁粗化、锁消除、锁排序等方法,以提高程序的性能和可靠性。
|
3天前
|
存储 关系型数据库 MySQL
《MySQL 入门教程》第 05 篇 账户和权限,Java高并发编程详解深入理解pdf
《MySQL 入门教程》第 05 篇 账户和权限,Java高并发编程详解深入理解pdf
|
3天前
|
设计模式 算法 Java
Java的前景如何,好不好自学?,万字Java技术类校招面试题汇总
Java的前景如何,好不好自学?,万字Java技术类校招面试题汇总