网站首页 > 精选教程 正文
在Java中,没有类就无法做任何事情,我们前面接触过几个类。然而,并不是所有的类表现出面向对象的典型特征。以Math 类为例,你已经看到,可以直接使用Math类的方法,如Math.random,而不必了解它是具体如何实现的,你只需要知道方法名和参数(如果有的话)。这正是封装的关键所在,当然所有类都是这样。但Math类只封装了功能,他不需要也不必隐藏数据。由于没有数据,因此也不必考虑创建对象和初始化它们的实例字段,因为根本没有实例字段。
下一节将会介绍一个更典型的类 —— java.util.Date 类,从中可以了解如何构造对象,以及如何调用类的方法。
补充:
Java的jdk 库提供了丰富强大的预定义类,在自己想实现某个功能的时候,应该先去了解,Java中是不是已经提供了这样的预定义类,有时候即便没有这种预定义类,也有一些能完成部分工作的类,这样就可以减少我们很多工作。并且,使用预定义类还更加安全和高效,因为jdk 是经过了严格测试,并且有全世界无数java工程师使用过的,相比于我们自己临时想到的方案,其可靠性绝大概率上更加安全。而且,这些预定义类都是顶级的Java工程师编写,效率方面也经过了优化,了解熟知预定义类,是走向高级Java工程师不可缺少的步骤。甚至于,以后我们为了提高自己的编程能力,要主动去读一些经典的jdk 源码,看看顶级高手是怎么来写代码的。比如 非常经典的HashMap 类,就很值得去读一读它的源码。
前面一直在用的 java.lang.String 类就是一个最重要的预定义类。
注意: java.lang 下的类是可以直接使用,而不必import 的。其他类库中的类则需要使用 import 来引入到类中,才可以使用(或者直接使用包名+类名的全限定名)。
比如,在自己的程序中使用String 可以直接用
String a = "aaa";
如果使用 java.util.Date 类,则需要先import
import java.util.Date;
public class MyTest{
public static void main(String[] args){
Date da = new Date();
}
}
或者,直接使用全限定名
public class MyTest{
public static void main(String[] args){
java.uti.Date da = new java.util.Date();
}
}
猜你喜欢
- 2024-11-28 java 核心技术-12版 卷Ⅰ- 5.2.3相等测试与继承
- 2024-11-28 java 核心技术-12版 卷Ⅰ- 5.2.4 hashCode方法
- 2024-11-28 Java入门书单
- 2024-11-28 java 核心技术-12版 卷Ⅰ- 4.3.7 隐式参数与显式参数
- 2024-11-28 全网最完整的免费java教程讲义系列(四)——java的流程控制
- 2024-11-28 java 核心技术-12版 卷Ⅰ- 4.6 对象构造 4.6.1重载
- 2024-11-28 java 核心技术-12版 卷Ⅰ- 3.10 数组
- 2024-11-28 java 核心技术-12版 卷Ⅰ- 4.3 自定义类
- 2024-11-28 2019年Java核心技术我整理了200多页pdf,今天分享给你
- 2024-11-28 java 核心技术12版卷1 - 1.3 Java applet 与 Internet
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- nginx反向代理 (57)
- nginx日志 (56)
- nginx限制ip访问 (62)
- mac安装nginx (55)
- java和mysql (59)
- java中final (62)
- win10安装java (72)
- java启动参数 (64)
- java链表反转 (64)
- 字符串反转java (72)
- java逻辑运算符 (59)
- java 请求url (65)
- java信号量 (57)
- java定义枚举 (59)
- java字符串压缩 (56)
- java中的反射 (59)
- java 三维数组 (55)
- java插入排序 (68)
- java线程的状态 (62)
- java异步调用 (55)
- java中的异常处理 (62)
- java锁机制 (54)
- java静态内部类 (55)
- java怎么添加图片 (60)
- java 权限框架 (55)
本文暂时没有评论,来添加一个吧(●'◡'●)