国际化:让世界上每个人都能看懂。

Locale类(java.util包下):包括所有国家、地区、语言

存在很多的静态属性,来表示国家、语言

三种构造方法:

Locale(String language)

根据语言代码构造一个语言环境。

Locale(String language, String country)

根据语言和国家构造一个语言环境。

Locale(String language, String country, String variant)

根据语言、国家和变量构造一个语言环境。

常用方法:

Locale getDefault()

获得此 Java 虚拟机实例的当前默认语言环境值。

String getDisplayCountry()

返回适合向用户显示的语言环境国家名。

void setDefault(Locale newLocale)

为此 Java 虚拟机实例设置默认语言环境。

String getLanguage()

返回此语言环境的语言代码。

String getCountry()

返回此语言环境的国家/地区代码。

注意:

国家会兼容语言,但语言不会兼容国家。

java.text.*:该包下存在许多格式化类

NumberFormat抽象类:

常用方法:

NumberFormat getInstance()

返回当前默认语言环境的通用数字格式。

NumberFormat getInstance(Locale inLocale)

返回指定语言环境的通用数字格式。

String format(double number)

根据国家,进行格式规范。

NumberFormat getCurrencyInstance(Locale inLocale)

返回指定语言环境的货币格式。

SimpleDateFormat类:

模式字母:

y  年

M  年中的月份

H  一天中的小时数(0-23)

h  am/pm 中的小时数(1-12)

m  小时中的分钟数

s  分钟中的秒数

构造器:

SimpleDateFormat(String pattern)

用给定的模式和默认语言环境的日期格式符号构造 SimpleDateFormat。

常用方法:

String format(Date date)

将一个 Date 格式化为日期/时间字符串。

注意:

看到相应的模式字母,就会进行转换。

实现国际化:

1、先写各个语言对应的文字类,使其extends ListResourceBundle,然后重写getContents(),返回一个二维数组。

2、在程序中按照Local和ListResourceBundle的baseName来选择对应的资源,调用getString()/getObject()取得value

ResourceBundle类:

ResourceBundle getBundle(String baseName, Locale locale)

baseName为对应的ListResourceBundle的类名(包名.类名)

使用指定的基本名称和语言环境,以及调用方的类加载器获取资源包。

注意:根据key去查找value时,当前没有会去查找默认的,默认的也没有则会抛出异常

5.0新特性:

1、自动装箱,自动解箱(简单类型->对象类型)

小于127的数值在自动装箱时只做一次装箱,做" == "时相等。

null无法自动解箱。

先装箱后赋值和先解箱后赋值时,需要注意是否能够匹配。

2、静态import

用于导入类中的静态属性和静态方法。

格式:import static 包名.类名.属性/方法/*

注意:

必须是静态的成员。

静态导入时,不允许导入同名方法/属性。

使用时,可省略" 类名. "就像使用本类方法一样

3、增强for循环:for(  :  )

方式统一,可以处理数组和集合。

不可以同时对两个以上的集合进行操作。

不支持删除元素。

4、可变长的参数:(...)

用于取代数组,实际上还是按数组进行处理,允许传递非数组的值(0到n个,中间用逗号分隔)。

可变长参数只能出现一次,且一定会放在参数列表的最后。

作参数时,可变长参数可以不传,但数组不可以。

5、格式化输入输出:Scanner类

了解下就可以,知道有这个类就OK。

6、枚举Enum:本质上也是一个类,具有类所有特性

格式:

enum 枚举名{

枚举值1,

枚举值2,

.....

}

特性:

显示一些同类型的清单。

一个枚举值就是一个枚举对象。

可以有构造器,但不能是public的。

具有一个私有的默认无参的构造器,显式构造后,默认的构造器会消失。

属性,方法和类一样。

枚举是final的(对于外部无法继承),但在内部可以去实现。

注意:

清单里的类,会调用匹配的构造器,如无,则会报错。

在枚举中可以有抽象方法,但在清单中的所有子类都必须实现他。

如果要写属性和方法,则最后的一个枚举值要以分号结束。

枚举中的values()方法会返回枚举中的所有枚举值:  Color[] ss = Color.values();

7、泛型

8、元数据(注释),项目中推广度一般

java面试第十六天的更多相关文章

  1. Java面试准备十六:数据库——MySQL性能优化

    2017年04月20日 13:09:43 阅读数:6837 这里只是为了记录,由于自身水平实在不怎么样,难免错误百出,有错的地方还望大家多多指出,谢谢. 来自MySQL性能优化的最佳20+经验 为查询 ...

  2. java分享第十六天( java读取properties文件的几种方法&java配置文件持久化:static块的作用)

     java读取properties文件的几种方法一.项目中经常会需要读取配置文件(properties文件),因此读取方法总结如下: 1.通过java.util.Properties读取Propert ...

  3. java面试第十天

    JFC:java基础类库(具体的类可以查看API文档) 观察者模式: 事件监听者对事件源进行监听,事件源会发生某些事件,监听者需要对事件作出相应的处理. 事件监听者(Observer): 处理事件 事 ...

  4. java面试第十五天

    网络编程: 多线程+网络: 1.服务器端的等待客户连接代码( while(true) ),服务器端与单个客户端交互的代码放入线程体( run ) 2.客户端如有其他要求,与服务器交互的代码也要放入线程 ...

  5. java面试第十四天

    包名.类名和属性可以被序列化,方法和构造器不会被序列化的. 静态属性不会被序列化的. 属性会被递归序列化的,也就是一个类中有引用类型的属性,如果这个属性对应的类实现了Serializable接口,在对 ...

  6. Java学习第十六天

    1:List的子类(掌握) (1)List的子类特点 ArrayList: 底层数据结构是数组,查询快,增删慢 线程不安全,效率高 Vector: 底层数据结构是数组,查询快,增删慢 线程安全,效率低 ...

  7. 学习java的第二十六天

    一.今日收获 1.java完全学习手册第三章算法的3.2排序,比较了跟c语言排序上的不同 2.观看哔哩哔哩上的教学视频 二.今日问题 1.快速排序法的运行调试多次 2.哔哩哔哩教学视频的一些术语不太理 ...

  8. 学习java的第十六天

    一.今日收获 1.完成了手册第二章没有验证完成的例题 2.预习了第三章的算法以及for语句与if语句的用法 二.今日难题 1.验证上出现问题,没有那么仔细. 2.第二章还有没有完全理解的问题 三.明日 ...

  9. 学习Java的第十六天——随机数

    学习内容:随机数 1.GetEvenNum()方法 实例代码: package 数字处理类; public class MathRondom {public static int GetEvenNum ...

随机推荐

  1. 图解vim常用命令

    VI 即 Visual Interface,可视化接口,VIM是VI的增强版 (improved),两张图总结vim常用命令. 图片来自 https://www.cnblogs.com/yangjig ...

  2. Polly简介 — 1. 故障处理策略

    Polly 是 .Net 下的一套瞬时故障处理及恢复的函式库,可让开发者以fluent及线程安全的方式来应用诸如Retry.Circuit Breaker.Timeout.Bulkhead Isola ...

  3. SecureCRT远程连接Linux服务器及相关配置

    这里的连接采用的是SSH2协议,关于SSH2协议可百度 一.连接不上可能的原因 1)服务器防火墙iptables /etc/init.d/iptables stop 2)SSH服务有问题 3)客户端到 ...

  4. iOS开发里的Bundle是个啥玩意?!

    初学iOS开发的同学,不管是自己写的,还是粘贴的代码,或多或少都写过下面的代码 [[NSBundle mainBundle] pathForResource:@"someFileName&q ...

  5. 调试查看CLR运行代码

    SOS (Son of Strike)调试扩展可以让我们在调试过程中查看CLR运行代码.SOS.dll随.NET一起安装,对于.NET 4.0来说,SOS.dll的所在位置是:C:\Windows\M ...

  6. Spring Boot中使用redis的发布/订阅模式

    原文:https://www.cnblogs.com/meetzy/p/7986956.html redis不仅是一个非常强大的非关系型数据库,它同时还拥有消息中间件的pub/sub功能,在sprin ...

  7. Spring Boot整合RabbitMQ详细教程

    原文:https://blog.csdn.net/qq_38455201/article/details/80308771 1.首先我们简单了解一下消息中间件的应用场景 异步处理 场景说明:用户注册后 ...

  8. firedac二进制序列和JSON序列的对比

    firedac二进制序列和JSON序列的对比 以同样大小的一个数据集的数据,作为测试的数据. 以JSON序列后的数据体积是4958字节. 以二进制序列后的数据体积是3044字节. 4958/3044= ...

  9. SSL协议具体解释

    背景介绍    近期在看<password学与网络安全>相关的书籍,这篇文章主要具体介绍一下著名的网络安全协议SSL. 在開始SSl介绍之前,先给大家介绍几个password学的概念和相关 ...

  10. [Android] Anreoid repo 切换分支

    reference : http://blog.csdn.net/lihui130135/article/details/40858885 如果已经有android仓库但是还不是最新的,想切换到And ...