java.lang - 不用import

java.lang包是java语言的核心,它提供了java中的基础类。包括基本Object类、Class类、String类、基本类型的包装类、基本的数学类等等最基本的类。我们介绍一下Java 8中的java.lang包。主要类如下图:

类型

对象基类
Object,是java.lang的根类,也是所有类的超类。


Class,用来表示类和接口的类型。Class对象在类加载时由JVM调用类加载器中的defineClass方法自动构造。
ClassLoader,负责加载类。
Compiler,作为编译器的占位符,它不做任何事情,仅用来支持Java到本机代码的编译器及相关服务。

基本类型
基本类型的包装类,包括Boolean、Character、Byte、Short、Integer、Long、Float、Double,其中数值类型均即成Number类。
String,字符串类。

字符序列
StringBuffer、StringBuilder,可变的字符序列。

枚举
Enum,是所有枚举类型的公共基类。


Package,包含了有关Java包(package)的信息。

无类型
Void,标示关键字void的Class对象的引用,不可被实例化。

迭代器
Iterable,可迭代接口,实现接口可以使用迭代器进行对象遍历。

工具

数学
Math、StrictMath,提供了基本的数字操作,如指数、对数、平方根和三角函数。一般情况下,Math调用StrictMath的方法来完成实现。java中还有一个java.math包,这个包主要提供用于执行任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal) 的类。

安全
SecurityManager,允许应用程序实现安全策略的类。

注解
Override,标记类中方法是实现/重写父类的方法。
SuppressWarnings,取消对被标记的元素的警告。
系统

进程
Process,进程抽象类。
ProcessBuilder,用于创建操作系统进程。
ProcessEnvironment,进程的运行环境参数。
ProcessImpl,进行接口的实现类。

线程
Thread,进程中的执行线程。
ThreadGroup,线程组,表示一个线程的集合。它构成一个树状结构,可以包含其他线程组,除了根节点的线程组,每个线程组都具有父线程组。
ThreadLocal,提供线程的变量。

运行
Runnable,可运行接口,所有Thread都应实现它。
Runtime,运行时类,将应用程序与其运行的环境相关联。
RuntimePermission,用于运行时权限。
System,系统级的很多属性和控制方法都放置在该类的内部。

堆栈
StackTraceElement,堆栈跟踪中的元素,它的每个实例都表示单独的一个栈帧(表示一个方法调用)。

异常
Throwable,异常基类,Java中所有异常都继承于它。

时间: 2024-08-06 07:58:52

java.lang - 不用import的相关文章

JDK框架简析--java.lang包中的基础类库、基础数据类型

题记 JDK.Java Development Kit. 我们必须先认识到,JDK不过,不过一套Java基础类库而已,是Sun公司开发的基础类库,仅此而已,JDK本身和我们自行书写总结的类库,从技术含量来说.还是在一个层级上,它们都是须要被编译成字节码.在JRE中执行的,JDK编译后的结果就是jre/lib下的rt.jar,我们学习使用它的目的是加深对Java的理解,提高我们的Java编码水平. 本系列全部文章基于的JDK版本号都是1.7.16. 源代码下载地址:https://jdk7.jav

在访问jsp时抛java.lang.IllegalArgumentException: Page directive: invalid value for import的原因

问题:java.lang.IllegalArgumentException: Page directive: invalid value for import 环境:tomcat 7.0.65 出错原因: 在index.jsp中的%@page import="java.util.Calendar;"%语句中,在导完包后加了分号,导致抛出异常. 把分号删除掉就OK了

java.lang.IllegalArgumentException: Page directive: invalid value for import 问题处理

1.问题说明: 项目原来用的tomcat版本是apache-tomcat-6.0,后来为了安全原因将版本升至apache-tomcat-7.0,发现有的jsp页面出现下面的异常: java.lang.IllegalArgumentException: Page directive: invalid value for import 2.问题分析解决: 仔细检查发现是<%@ page import=" java.util.*;"%>一句引起的错误.把<%@ page i

JDK源码简析--java.lang包中的基础类库

题记 JDK,Java Development Kit. 我们必须先认识到,JDK只是,仅仅是一套Java基础类库而已,是Sun公司开发的基础类库,仅此而已,JDK本身和我们自行书写总结的类库,从技术含量来说,还是在一个层级上,它们都是需要被编译成字节码,在JRE中运行的,JDK编译后的结果就是jre/lib下得rt.jar,我们学习使用它的目的是加深对Java的理解,提高我们的Java编码水平. 本系列所有文章基于的JDK版本都是1.7.16. 本节内容 在本节中,简析java.lang包所包

自己写一个java.lang.reflect.Proxy代理的实现

前言 Java设计模式9:代理模式一文中,讲到了动态代理,动态代理里面用到了一个类就是java.lang.reflect.Proxy,这个类是根据代理内容为传入的接口生成代理用的.本文就自己写一个Proxy类出来,功能和java.lang.reflect.Proxy一样,传入接口.代理内容,生成代理. 抛砖引玉吧,个人觉得自己写一些JDK里面的那些类挺好的,写一遍和看一遍真的是两个不同的概念,写一遍既加深了对于这些类的理解.提升了自己的写代码水平,也可以在写完之后对比一下自己的实现有哪些写得不好

sun.reflect.generics.reflectiveObjects.TypeVariableImpl cannot be cast to java.lang.Class异常解决方法

package com.wzs; import java.lang.reflect.ParameterizedType; public class T1<T> {     private Class classt;     public T1() {         ParameterizedType type = (ParameterizedType) this.getClass().getGenericSuperclass();         this.classt = (Class)

moon 反射机制---java.lang.reflect包

java反射机制:在运行状态中,对于一个已经加载到JVM的java对象/类 在程序中实现访问.检查.修改.描述java对象本身的信息(构造方法.方法.成员变量.类本身的信息) 这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制. C++,Java,C#不是动态语言.但是JAVA有着一个非常突出的动态相关机制:Reflection, 反射是java中一种强大的工具,能够使我们很方便的创建灵活的代码,这些代码可以再运行时装配,无需在组件之间进行源代码链接. 二,反射机制的作用:

java.lang包

作者:gnuhpc 出处:http://www.cnblogs.com/gnuhpc/ 1.特性——不用import 2.String String x = "abc"; <=> String x= new String("abc"); 因为public final class java.lang.String; 而String x="The number " + y;中,在JAVA中不管是什么变量或者对象,在对String进行加和时

Java中的import

有些人写了一阵子 Java,可是对于 Java的 package 跟 import 还是不太了解.很多人以为原始码 .java 文件中的 import 会让编译器把所 import 的程序通通写到编译好的 .class 档案中,或是认为 import 跟 C/C++的 #include 相似,实际上,这是错误的观念. 让我们先了解一下,Java 的 package 到底有何用处. 其实,package 名称就像是我们的姓,而 class 名称就像是我们的名字.package 名称有很多 . 的,