课程封面-JavaSE-AT阿宝哥


深入了解IT/互联网行业及岗位,请参阅通用IT/互联网岗位招聘计划(最新全岗版)。
深入了解职业晋升及学习路线,请参阅最优职业晋升路线和课程学习指南(最新全栈版)。


敲黑板,说重点,这是Java之父詹姆斯·高斯林原著的自译版,初学者和老鸟混江湖必读!


内容导航

  • 前言
  • 1、Java编程语言的主要特性
    • 1.1、基本数据类型
    • 1.2、算术和关系运算符
    • 1.3、数组
    • 1.4、字符串
    • 1.5、多级中断
    • 1.6、内存管理和垃圾收集
    • 1.7、后台垃圾收集器
    • 1.8、集成的线程同步
  • 2、从C和c++中删除的特性
    • 2.1、不再需要类型定义、定义或预处理器
    • 2.2、不再需要结构或联合体
    • 2.3、不再需要枚举
    • 2.4、不再需要函数
    • 2.5、不再需要多继承
    • 2.6、不再需要goto语句
    • 2.7、不再需要操作符重载
    • 2.8、不再需要自动强制
    • 2.9、不再需要指针
  • 3、总结
  • 快速导航

前言

在设计上达到完美,不是无法再增加什么,而是不需要再删减任何东西。

安东尼·圣艾修伯里(法国作家)

罗伯特·海莱因在他的科幻小说《滚石》中评论到:

每一项技术都要经历三个阶段:首先是一个极其简单、令人不满意的小玩意;第二,是一组极为复杂的小工具,其设计目的是克服原来的缺点,从而通过极其复杂的折衷办法取得某种令人满意的性能;第三,最后一个合理的设计。

海莱因的评论可以很好地描述许多编程语言的演变。Java为编程语言的发展提供了一种新的观点——创建一种小型和简单的语言,这种语言仍然足够全面,可以处理各种各样的软件应用程序开发。虽然Java在表面上类似于C和c++,但Java之所以简单,是因为它从前辈那里系统地删除了一些特性。本章讨论了Java的两个主要设计特性,即简单(从删除特性开始)和熟悉(因为它看起来像C和c++)。下一章将更详细地讨论Java的面向对象特性。在这一章的末尾,你会发现关于在Java进化过程中从C和c++中删除的特性的讨论。

设计目标

简单是Java最重要的设计目标之一。简单性和从它的C和c++祖先那里移除许多不确定的“特性”使Java相对较小,并减少了程序员在生成可靠应用程序方面的负担。为此,Java设计团队检查了“现代”C和c++语言的许多方面,从而确定在现代面向对象编程环境中可以消除的特性。

另一个主要的设计目标是,对于个人计算机和工作站领域中的大多数程序员来说,Java看起来很熟悉,其中有很大一部分系统程序员和应用程序程序员熟悉C和c++。因此,Java“看起来像”c++。熟悉C、Objective C、c++、Eiffel、Ada和相关语言的程序员应该会发现他们的Java语言学习曲线相当短——大约几周。

为了说明Java简单和熟悉的方面,我们遵循了一系列优秀编程书籍的传统,向您展示HelloWorld程序。它是你能写的最简单的程序,它能做一些事情。这是用Java实现的HelloWorld。


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class HelloWorld {static public void main(String args[]) {System.out.println("Hello world!");}}

这个例子声明了一个名为HelloWorld的类。类将在面向对象编程的下一章中讨论,但通常我们假设读者熟悉对象技术并了解类、对象、实例变量和方法的基础知识。

在HelloWorld类中,我们声明一个名为main()的方法,该方法反过来包含一个方法调用,以在标准输出上显示字符串“Hello world!”,打印“Hello world!”的语句通过调用out对象的println方法来实现这一点。out对象是系统类中的一个类变量,它对文件执行输出操作。这就是HelloWorld的所有含义。


1、Java编程语言的主要特性

Java™编程语言在某种程度上遵循c++,这使得许多程序员对它很熟悉。本节描述Java编程语言的基本特性,并指出该语言与它的祖先C和c++的区别。

1.1、基本数据类型

除了这里讨论的基本数据类型之外,Java编程语言中的所有内容都是对象。如果需要,甚至可以将原始数据类型封装到库提供的对象中。Java编程语言在其基本数据类型集中紧跟C和c++,但有几个小的例外。基本数据类型只有三种,即数字类型、字符类型和布尔类型。

数字数据类型

整数数字类型是8位字节、16位短字节、32位int和64位长字节。Java中的8位字节数据类型已经取代了旧的C和c++字符数据类型。Java对char数据类型进行了不同的解释,如下所述。

在Java中,整数数据类型没有无符号类型说明符。

真正的数字类型是32位浮点型和64位双精度浮点型。真正的数字类型及其算术运算由IEEE 754规范定义。浮点文字值,如23.79,默认情况下被认为是双精度的;如果您希望将其赋值给float变量,则必须显式地将其强制转换为float。

字符数据类型

Java语言字符数据与传统的c语言不同。Java的char数据类型定义了16位Unicode字符。Unicode字符是无符号的16位值,它们定义0到65,535范围内的字符代码。如果你写一个声明,如


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class ChatType {public static void main(String[] args) {char  myChar = 'Q';}}

您将得到一个初始化为字符q的Unicode值的Unicode(16位无符号值)类型。通过对Java语言应用程序的字符数据类型采用Unicode字符集标准,Java语言应用程序可以适应国际化和本地化,极大地扩展了全球应用程序的市场。

布尔数据类型

Java添加了一个布尔数据类型作为基本类型,默认了现有的C和c++编程实践,开发人员在其中为真和假、YES和NO或类似的结构定义关键字。Java布尔变量假定值为真或假。Java编程语言boolean是一种独特的数据类型;与常见的C实践不同,Java编程语言布尔类型不能转换为任何数字类型。

1.2、算术和关系运算符

所有熟悉的C和c++操作符都适用。Java编程语言没有无符号数据类型,因此在该语言中添加了>>>操作符,以指示无符号(逻辑)右移。Java还使用+运算符进行字符串连接;下面关于字符串的讨论将讨论串联。

1.3、数组

与C和c++相比,Java编程语言数组是一流的语言对象。Java编程语言中的数组是具有运行时表示的真实对象。可以声明和分配任何类型的数组,还可以分配数组的数组以获得多维数组。

你用这样声明一个数组,比如说,点(你在别处声明的类):


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class Point {}public class ArrayType {public static void main(String[] args) {Point  myPoints[];}}

这段代码声明myPoints是一个未初始化的点数组。此时,为myPoints分配的唯一存储是一个引用句柄。在未来的某个时间,您必须分配所需的存储量,例如:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class Point {}public class ArrayType {public static void main(String[] args) {Point  myPoints[];myPoints = new Point[10];}}

将包含十个引用的数组分配给初始化为null引用的点。注意,数组的这种分配实际上并不为您分配Point类的任何对象;你还需要分配点对象,像这样:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class Point {}public class ArrayType {public static void main(String[] args) {Point myPoints[];myPoints = new Point[10];int i;for (i = 0; i < 10; i++) {myPoints[i] = new Point();}}}

对myPoints元素的访问可以通过普通的c风格的索引来执行,但是所有的数组访问都被检查,以确保它们的索引在数组的范围内。如果索引超出数组的范围,将生成异常。

数组的长度存储在特定数组的length实例变量myPoints中。length包含myPoints中元素的数量。例如,代码片段:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class Point {}public class ArrayType {public static void main(String[] args) {Point myPoints[];myPoints = new Point[10];int i;int howMany = myPoints.length;for (i = 0; i < howMany; i++) {myPoints[i] = new Point();}}}

将值10赋给howMany变量。

C数组的内存指针的概念元素,和,任意指针运算导致不可靠的C代码不再你能离开一个数组的末尾,可能破坏记忆和导致了著名的“delayed-crash”综合症,出现一个内存访问违反今天表现后几小时或几天。程序员可以确信,Java中的数组检查将导致更健壮和可靠的代码。

1.4、字符串

字符串是Java编程语言对象,而不是c语言中的伪字符数组。实际上有两种字符串对象:string类用于只读(不可变)对象。StringBuffer类用于您希望修改的字符串对象(可变字符串对象)。

虽然字符串是Java编程语言对象,但是Java编译器遵循C语言的传统,提供了C程序员使用C风格的字符串所享有的语法便利,也就是说,Java编译器理解用双引号括起来的字符字符串将被实例化为字符串对象。因此,声明:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class StringType {public static void main(String[] args) {String hello = "Hello world!";}}

在后台实例化String类的对象,并使用包含Unicode字符表示“Hello world!”的字符串字符串初始化它。

Java技术扩展了+运算符的含义,表示字符串连接。因此,你可以写这样的语句:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class StringType {public static void main(String[] args) {int num = 100;System.out.println("There are " + num + " characters in the file.");}}

运行结果:


There are 100 characters in the file.

这个代码片段将字符串“There are”与数字值num转换为字符串的结果连接起来,并将其与字符串“文件中的字符”连接起来。然后在标准输出上打印这些连接的结果。

String对象提供了一个length()访问器方法来获取字符串中的字符数。

代码:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class StringType {public static void main(String[] args) {String hello = "Hello world!";int length = hello.length();System.out.println(length);}}

运行结果:


12

1.5、多级中断

Java编程语言没有goto语句。要中断或继续多重嵌套循环或开关结构,您可以将标签放在循环和开关结构上,然后断开或继续按标签命名的块。下面是来自Java编程语言内置字符串类的一小段代码:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class MultiLevelBreak {public static void main(String[] args) {outer: for (int i = 1; i <= 9; i++) {inner: for (int j = 1; j <= 9; j++) {if (j > i) {// 直接中断内层循环break inner;}int result = i * j;System.out.print(i + "x" + j + "=" + result + "\t");// 当7x3=21时,7x4,7x5,7x6,7x7这几项不打印。// 相当于仅仅中断了当i=7时的外层循环,当然未执行完的内层循环也被关联中断。if (result == 21) {System.out.println("--\t--\t--\t--");continue outer;}} /* end of inner for loop */System.out.print("\n");} /* end of outer for loop */}}

运行结果:


1x1=1	
2x1=2	2x2=4	
3x1=3	3x2=6	3x3=9	
4x1=4	4x2=8	4x3=12	4x4=16	
5x1=5	5x2=10	5x3=15	5x4=20	5x5=25	
6x1=6	6x2=12	6x3=18	6x4=24	6x5=30	6x6=36	
7x1=7	7x2=14	7x3=21	--	--	--	--
8x1=8	8x2=16	8x3=24	8x4=32	8x5=40	8x6=48	8x7=56	8x8=64	
9x1=9	9x2=18	9x3=27	9x4=36	9x5=45	9x6=54	9x7=63	9x8=72	9x9=81	

continue测试语句位于嵌套在另一个for循环中的for循环中。通过引用标签测试,continue语句将控制传递给外部for语句。在传统C语言中,continue语句只能继续立即包围的块;要继续或退出外部块,程序员传统上要么使用辅助布尔变量,其唯一目的是确定外部块是继续还是退出;或者,程序员(mis)使用goto语句退出嵌套块。Java编程语言中标记块的使用大大简化了编程工作并大大减少了维护。

标记块的概念可以追溯到20世纪70年代中期,但在现代编程语言中并没有得到很大的普及。Perl是另一种实现标记块概念的现代编程语言。Perl的下一个标签和最后一个标签等价于Java中的continue label和break label语句。

1.6、内存管理和垃圾收集

C和c++程序员现在已经习惯了显式管理内存的问题:分配内存、释放内存以及跟踪什么内存可以在什么时候释放。显式内存管理已被证明是bug、崩溃、内存泄漏和性能低下的有效来源。

Java技术完全消除了程序员的内存管理负载。不存在c风格的指针、指针算术、malloc和free。自动垃圾收集是Java及其运行时系统不可或缺的一部分。虽然Java技术提供了一个新的操作符来为对象分配内存,但是没有显式的空闲函数。一旦分配了对象,运行时系统就会跟踪对象的状态,并在对象不再使用时自动回收内存,从而释放内存供将来使用。

Java技术的内存管理模型基于对象和对对象的引用。Java技术没有指针。相反,对已分配存储的所有引用(实际上意味着对对象的所有引用)都是通过符号“句柄”进行的。Java技术内存管理器跟踪对对象的引用。当对象没有更多引用时,该对象是垃圾收集的候选对象。

Java技术的内存分配模型和自动垃圾收集使您的编程任务更容易,消除了整个类的bug,并且通常比通过显式内存管理获得的性能更好。下面是一个代码片段,它说明了什么时候发生垃圾收集。

案例代码:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:倒置字符串
注意:*/
public class ReverseString {public static String reverseIt(String source) {int i, len = source.length();StringBuffer dest = new StringBuffer(len);for (i = (len - 1); i >= 0; i--) {dest.append(source.charAt(i));}return dest.toString();}}

测试代码:


public class Client {public static void main(String[] args) {String hello = "Hello World!";String result = ReverseString.reverseIt(hello);System.out.println(result);}}

运行结果:


!dlroW olleH

变量dest在执行reverseIt方法时用作临时对象引用。当dest超出作用域(reverseIt方法返回)时,对该对象的引用已经消失,然后它就成为垃圾收集的候选对象。

1.7、后台垃圾收集器

Java技术垃圾收集器通过在与HotJava TM浏览器等软件应用程序交互时利用用户行为的本质来实现高性能。典型交互应用程序的典型用户有许多自然的停顿,在这些停顿中,他们在思考面前的场景或思考下一步要做什么。Java运行时系统利用这些空闲时间,并在没有其他线程竞争CPU周期时以低优先级线程运行垃圾收集器。垃圾收集器收集并压缩未使用的内存,增加了在大量交互使用期间需要足够的内存资源的可能性。

使用线程运行垃圾收集器只是从Java技术的集成多线程功能中获得的协同作用的众多示例之一,否则一个棘手的问题将以简单而优雅的方式得到解决。

1.8、集成的线程同步

Java技术支持多线程,在语言(语法)级别和通过其运行时系统和线程对象的支持。虽然其他系统提供了多线程的工具(通常通过“轻量级进程”库),但是在语言本身中构建多线程支持为程序员提供了一种更简单、更强大的工具,可以轻松创建线程安全的多线程类。多线程将在第7章中更详细地讨论。


2、从C和c++中删除的特性

本章的前一部分集中讨论了Java的主要特性。本节讨论在Java发展过程中从C和c++中删除的特性。

第一步是从C和c++中消除冗余。在许多方面,C语言演变成一组重叠的特性,提供了太多的方式来表达相同的内容,而在许多情况下却没有提供所需的特性。在试图添加“C中的类”时,c++只是增加了更多的冗余,同时保留了C的许多固有问题。

2.1、不再需要类型定义、定义或预处理器

用Java编写的源代码很简单。没有预处理器,没有#define和相关功能,没有typedef,没有这些特性,不再需要头文件。Java语言源文件提供其他类及其方法的声明,而不是头文件。

C和c++的一个主要问题是您需要理解另一个程序员代码的上下文量:您必须阅读所有相关的头文件、所有相关的#定义和所有相关的类型定义,然后才能开始分析程序。从本质上说,使用#define和typedefs编程会导致每个程序员都发明一种新的编程语言,除了它的创建者之外,任何人都无法理解这种语言,从而破坏了良好编程实践的目标。

在Java中,您可以通过使用常量来获得#define的效果。通过声明类可以获得typedef的效果——毕竟,类有效地声明了一个新类型。您不需要头文件,因为Java编译器将类定义编译成二进制形式,该形式通过链接时间保留所有类型信息。

通过删除所有这些行李,Java变得非常无上下文。程序员可以阅读和理解代码,更重要的是,修改和重用代码更快更容易。

2.2、不再需要结构或联合体

Java没有复杂数据类型的结构或联合体。当你有类的时候,你不需要结构和联合;您可以通过使用适当的实例变量声明一个类来实现相同的效果。

下面的代码片段声明了一个名为Point的类。


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:坐标点。
注意:*/
public class Point extends Object {double x;double y;// methods to access the instance variablespublic double getX() {return x;}public void setX(double x) {this.x = x;}public double getY() {return y;}public void setY(double y) {this.y = y;}}

下面的代码片段声明了一个名为Rectangle的类,它使用Point类的对象作为实例变量。


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:矩形。
注意:*/
public class Rectangle extends Object {Point lowerLeft;Point upperRight;// methods to access the instance variablespublic Point getLowerLeft() {return lowerLeft;}public void setLowerLeft(Point lowerLeft) {this.lowerLeft = lowerLeft;}public Point getUpperRight() {return upperRight;}public void setUpperRight(Point upperRight) {this.upperRight = upperRight;}}

在C语言中,您将这些类定义为结构。在Java中,只需声明类。您可以随意将实例变量设置为私有或公共,这取决于您希望向其他对象隐藏实现细节的程度。

2.3、不再需要枚举

Java没有枚举类型。通过声明一个类,您可以获得与enum类似的东西,该类存在的惟一理由是保存常量。你可以像这样使用这个功能:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:方向。
注意:*/
public class Direction extends Object {public static final int North = 1;public static final int South = 2;public static final int East = 3;public static final int West = 4;}

你现在可以引用,比如说,South常量使用direction。South这个符号。

以这种方式使用类来包含常量比C的枚举类型有一个主要优点。在C(和c++)中,枚举中定义的名称必须是惟一的:如果您有一个名为HotColors的枚举,其中包含红色和黄色的名称,则不能在任何其他枚举中使用这些名称。例如,您不能定义另一个名为TrafficLightColors的枚举也包含红色和黄色。

使用Java中的类到容器常量技术,您可以在不同的类中使用相同的名称,因为这些名称由包含的类的名称限定。从上面的例子中,您可能希望创建另一个名为CompassRose的类:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:罗盘刻度盘。
注意:*/
public class CompassRose extends Object {public static final int North = 1;public static final int NorthEast = 2;public static final int East = 3;public static final int SouthEast = 4;public static final int South = 5;public static final int SouthWest = 6;public static final int West = 7;public static final int NorthWest = 8;}

没有歧义,因为包含类的名称充当常量的限定符。在第二个示例中,您将使用CompassRose符号。西北地区访问相应值。Java有效地为您提供了限定枚举的概念,所有这些概念都在现有的类机制中。

2.4、不再需要函数

Java没有函数。面向对象编程取代了函数式和过程式编程风格。混合这两种风格只会导致混淆并稀释面向对象语言的纯粹性。使用函数可以做的任何事情都可以通过定义类并为该类创建方法来完成。从上面考虑Point类。我们添加了一些公共方法来设置和访问实例变量:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:坐标点。
注意:*/
public class Point extends Object {double x;double y;// methods to access the instance variablespublic double getX() {return x;}public void setX(double x) {this.x = x;}public double getY() {return y;}public void setY(double y) {this.y = y;}}

如果x和y实例变量是该类私有的,则访问它们的唯一方法是通过该类的公共方法。下面是如何从Point类的对象(比如矩形类的对象)中使用Point类的对象:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:矩形。
注意:*/
public class Rectangle extends Object {Point lowerLeft;Point upperRight;public void setEmptyRect() {lowerLeft.setX(0.0);lowerLeft.setY(0.0);upperRight.setX(0.0);upperRight.setY(0.0);}// methods to access the instance variablespublic Point getLowerLeft() {return lowerLeft;}public void setLowerLeft(Point lowerLeft) {this.lowerLeft = lowerLeft;}public Point getUpperRight() {return upperRight;}public void setUpperRight(Point upperRight) {this.upperRight = upperRight;}}

这并不是说函数和过程本身就是错误的。但是对于给定的类和方法,我们现在只剩下一种表示给定任务的方法了。通过消除函数,程序员的工作大大简化了:只处理类及其方法。

2.5、不再需要多继承

多重继承——以及它产生的所有问题——从Java中被丢弃。多继承的理想特性由接口提供——在概念上类似于目标C协议。

接口不是类的定义。相反,它是一个或多个类将实现的一组方法的定义。接口的一个重要问题是它们只声明方法和常量。变量不能在接口中定义。

2.6、不再需要goto语句

Java没有goto语句。研究表明,后藤被(mis)使用的频率比“因为它在那里”要高。消除goto会简化语言——例如,对于将goto放到for语句中间的效果没有规则。对大约10万行C代码的研究表明,大约90%的goto语句纯粹是为了获得跳出嵌套循环的效果。如上所述,多级中断和继续删除goto语句的大部分需要。

2.7、不再需要操作符重载

程序员无法提供重载标准算术运算符的方法。同样,通过声明类、适当的实例变量和操作这些变量的适当方法,也可以轻松地实现操作符重载的效果。消除操作符重载会大大简化代码。

2.8、不再需要自动强制

Java禁止C和c++风格的自动强制。如果希望将一种类型的数据元素强制转换为会导致精度损失的数据类型,则必须通过强制转换显式地这样做。考虑以下代码片段:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class TypeCast {public static void main(String[] args) {int myInt;double myFloat = 3.14159;//本语句将报错“Type mismatch: cannot convert from double to int”myInt = myFloat;}}

将myFloat赋值给myInt会导致编译器错误,指示可能丢失精度,并且必须使用显式转换。因此,您应该将代码片段重写为:


/*
作者:AT阿宝哥
日期:2016年9月18日
愿景:参考官方资料,做最好的课程,成就更多职业人!
邮箱:12264104@qq.com
CSDN:https://blog.csdn.net/goldentec
简书:https://www.jianshu.com/u/8a6075d7a2e0
说明:注意:*/
public class TypeCast {public static void main(String[] args) {int myInt;double myFloat = 3.14159;//强行转换为intmyInt = (int) myFloat;}}

2.9、不再需要指针

大多数研究都认为指针是程序员向代码中注入bug的主要特性之一。由于结构已经消失,数组和字符串是对象,因此不再需要指向这些结构的指针。因此,Java没有指针数据类型。任何需要C语言中的数组、结构和指针的任务都可以通过声明对象和对象数组更容易、更可靠地执行。您可以通过数组的算术索引访问数组,而不是对数组指针进行复杂的指针操作。Java运行时系统检查所有数组索引,以确保索引在数组的范围内。

由于指针不正确,您不再有悬空指针和内存垃圾,因为Java中没有指针。


3、总结

综上所述,Java是:

简单——要完成工作,您需要理解的语言结构的数量是最少的。

友好的——Java看起来像C和c++,但却忽略了这些语言的巨大复杂性。

既然您已经了解了Java是如何通过删除其前辈的特性来简化的,那么请阅读下一章来讨论Java的面向对象特性。


Familiar /fə’mɪlɪə/ adj. 熟悉的;常见的;亲近的 n. 常客;密友

注:

我个人认为,对于c或者c++程序员来说,Java借鉴过来的那些特性确实不陌生。但是,更重要的是,Java抛弃了c和c++的那些令人费解和头疼的特性,这大大降低了学习Java的难度和开发效率。所以,我觉得Familiar翻译为”友好“更为贴切。


好好学习,天天向上!继续下一章…👏👏👏👏👏👏


快速导航

《Java1996》探索与学习路线图

《Java1996》01:Java技术简介

《Java1996》02:简单和友好的

《Java1996》03:面向对象

《Java1996》04:体系结构中立、可移植和健壮的

《Java1996》05:解释执行和动态的

《Java1996》06:安全性

《Java1996》07:多线程

《Java1996》08:性能比较

《Java1996》09:基本系统和库

《Java1996》10:HotJava万维网浏览器

《Java1996》大礼包:Java语言和虚拟机规范


扫码关注AT阿宝哥,畅读更多内容!


感谢您阅读,如果对作者其它文章也很感兴趣,请扫码关注!🚀🚀🚀🚀🚀🚀


查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. php token的生成

    --->非开放性平台--->公司内部产品接口特点汇总:1、因为是非开放性的,所以所有的接口都是封闭的,只对公司内部的产品有效;2、因为是非开放性的,所以OAuth那套协议是行不通的,因为没有中间用户的授权过程;3、有点接口需要用户登录才能访问;4、有点接口不需要用户登…...

    2024/4/28 4:34:00
  2. 阻止小程序事件冒泡的三种方法

    1.直接用方法 :catchtouchmove=“preventD” <view class="selector-bj {{isTapSelector ? : is-focus-selector }}"wx:if="{{selectorBj}}" bindtap=tapSeleBj catchtouchmove="preventD"> </view>//防止点击穿透 背景层prevent…...

    2024/4/25 14:22:13
  3. Centos6.5中搭建WEB渗透环境DVWA渗透测试环境

    Centos6.5中搭建WEB渗透环境DVWA渗透测试环境搭建前的准备1.1 修改系统网卡配置,保证外网联通性 搭建DAWA渗透测试环境应该搭建在虚拟机中,所以应该事先先在VMware-Station中安装一个Centos虚拟机。这里我选择Centos6.5,安装完成后更改网卡配置,使得虚拟机能够连接外网。如…...

    2024/4/28 8:10:25
  4. Redis初步学习笔记

    Redis学习笔记 文章目录Redis学习笔记命名规范redis的常用命令DEL**EXISTS**EXPIREKEYSTTLTYPEString类型赋值语法取值语法自增/自减Hash类型赋值语法取值语法删除语法其它语法List类型赋值语法取值语法删除语法修改语法高级语法Set类型赋值语法取值语法删除语法差集语法交集语…...

    2024/4/28 6:06:27
  5. 《Java1996》03:啥是面向对象?

    深入了解IT/互联网行业及岗位,请参阅通用IT/互联网岗位招聘计划(最新全岗版)。 深入了解职业晋升及学习路线,请参阅最优职业晋升路线和课程学习指南(最新全栈版)。敲黑板,说重点,这是Java之父詹姆斯高斯林原著的自译版,初学者和老鸟混江湖必读!内容导航:前言 1、Jav…...

    2024/4/17 1:13:05
  6. FZU 1275和UVA11624

    这两个题比较相似,放到一起来整理。 FZU 1275 放火烧山 法外狂徒张三在n*m的平地上放火玩,#表示草,张三有分身,他的分身和他本人分别选一个#格子点火,火可以向上向下向左向右在有草的格子蔓延,点火的地方时间为0,蔓延至下一格的时间依次加一。求烧完所有的草需要的最少时…...

    2024/4/15 7:49:20
  7. 看看那些牛X的Android开发是如何学习的吧!

    作者:jsonchao作为程序员,我们几乎每天都在接收非常大量的信息,其中不乏有很多的知识,当然学习不是一味的灌输,确实是有一些不错的方法可以辅助我们学的更好。相信大家都好奇 jsonchao 为何如此高产,而且每篇文章既有深度,又不缺广度,我之前也好奇 jsonchao 的学习方式…...

    2024/4/17 1:13:17
  8. ubuntu下开发java准备工作

    ubuntu下开发java准备工作(1)1.安装jdk2.安装idea3.安装git4.maven 配置5.svn安装 秉承爱生活爱折腾的90后程序员精神,用新不用旧。 jdk11 lts版本 ubuntu 20 lts版本 idea2020.1 1.安装jdk 1.下载 华为镜像站点https://repo.huaweicloud.com/java/jdk/11.0.2+9/ 2.解压tar …...

    2024/4/18 17:51:50
  9. 安全规范代码示例(请求及响应加解密、接口请求验证签名、入参过滤器、异常referer请求/登录拦截器)

    一:加解密入参/出参 目的:为了防止请求参数及响应数据被暴力破解或截取,通过AES对称性加密传输规范,对请求及响应进行加解密处理 实现过程:创建请求及响应拦截器,对请求及响应源头进行数据处理,保证数据的安全传输 DecryptRequestBodyAdvice 客户端请求拦截器 EncodeRe…...

    2024/4/17 4:08:19
  10. 新浪微博基于混合云的PHP服务化与弹性扩容XCOPY艾高贝eb5

    从后端来讲,新浪微博可以分为Java和LNMP两大体系,特别是在LNMP方面积累了很多经验。发展初期,新浪微博侧重从性能角度出发,做架构方面的调整和优化。近两年,它投入人力、物力,把重点放在了弹性扩容方面。 本文由在新浪微博工作近七年、现任主站研发负责人的侯青龙分享新时…...

    2024/4/20 5:57:42
  11. 简单的SSM整合,并测试

    首先是导入Spring需要导入的包:在resource目录下创建一个spring-config.xml文件使用Spring注解自动注入,需要在spring-config.xml中开启注解扫描<!--开启注解扫描--> <context:component-scan base-package="testbean"/>在testbean包中创建实体类并加上…...

    2024/4/18 21:43:10
  12. 走进京东金融:听过来人谈经验及技术干货XCOPY艾高贝eb5

    以「金融科技」定位的京东金融集团成立于2013年10月,逐步构建了供应链金融、消费金融、财富管理、众筹、证券、保险、支付、金融科技以及农村金融九大业务板块。 京东金融CEO陈生强表示,京东金融以数据为基础,以技术为手段,借力京东的场景和用户资源来做金融业务,这是自营…...

    2024/4/17 1:12:59
  13. 部门新来了一个技术总监,禁止我们使用Lombok

    我有个学弟,在一家小型互联网公司做Java后端开发,最近他们公司新来了一个技术总监,这位技术总监对技术细节很看重,一来公司之后就推出了很多"政策",比如定义了很多开发规范、日志规范、甚至是要求大家统一使用某一款IDE。但是这些都不是我这个学弟和我吐槽的点,…...

    2024/4/23 15:48:02
  14. ubuntu18.04安装SecureCRT

    参考链接:https://blog.csdn.net/idwtwt/article/details/86727895 https://www.cnblogs.com/dying/archive/2013/12/24/3489128.html...

    2024/4/23 15:48:01
  15. spark 报错 while invoking RpcHandler#receive() for one-way message. org.apache.spark.SparkException: C

    我的情况是 spark.stop() 忘记写了,写上就好了;...

    2024/4/23 15:48:07
  16. N个骰子的点数和的概率

    可以考虑用两个数组来存储骰子点数每一总数出现的次数。在一次循环中,第一个数组中的第n个数字表示骰子和为n出现的次数。那么在下一循环中,我们加上一个新的骰子。那么此时和为n的骰子出现的次数,应该等于上一次循环中骰子点数和为n-1、n-2、n-3、n-4、n-5与n-6的总和。所以…...

    2024/4/23 15:47:59
  17. 数据结构&算法 数组

    数组数组是一个容器,可以容纳固定数量的项目,这些项目应为同一类型。大多数数据结构都利用数组来实现其算法。以下是了解数组概念的重要术语。元素 - 存储在数组中的每个项目称为元素。索引 - 数组中元素的每个位置都有一个数字索引,用于标识元素。 在C语言中,当使用size初…...

    2024/4/23 15:47:58
  18. 34.像素化图像悬停特效

    效果 (源码网盘地址在最后)视频演示「前端编程实战 34」HTML+CSS3 实现像素化图像悬停特效视频地址一:https://www.bilibili.com/video/BV1ta4y1e7WP 视频地址二:https://www.ixigua.com/i6828497506532327939/ 源码 index.html <!DOCTYPE html> <html lang="e…...

    2024/4/23 15:48:05
  19. docker容器

    1.新建容器并启动: [root@localhost~]#dockerrun-itcentos:latest/bin/bash [root@a837f8b605e6/]# -t伪终端-i交互模式 2.退出 (1.)退出后还显示UP状态: Ctrl+p加ctrl+q不要ctrl+p+q (2.)推出后显示exit Ctrl+cctrl+d或者直接命令行exit [root@localhost~]#dockerps-a CONTA…...

    2024/4/23 15:47:56
  20. 学习web前端,这10个学习方式你千万要注意!

    1.前言 从事web前端的人很多,每个人的学习方式,学习习惯基本不会一模一样!关于web前端(或者直接互联网),大家都知道,是做到老,学到老的一个行业。之前写文章的时候,我说过很多学习的方式和建议。今天换一下,说一下我个人不建议的学习方式,或者我个人觉得是妨碍进步的…...

    2024/4/23 15:48:02

最新文章

  1. 41. 【Android教程】Android 手势处理

    作为忠实的 Android 系统用户&#xff0c;你应该会经常用到各种手势&#xff1a;点击、长按、双击、缩放、滑动、拖拽、返回等等&#xff0c;可以说丰富的手势可以让用户更加简洁方便的使用 App&#xff0c;甚至直接影响到 App 的使用体验。这些手势都是系统为我们提供的操作方…...

    2024/4/28 14:25:56
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 分享一个基于Multi-SLAM+3DGS的新一代三维内容生产技术

    基于智能空间计算&#xff0c;新一代超逼真三维内容生成技术。 可自动化生成超逼真的大场景三维模型&#xff0c;并在各类终端和空间计算设备中&#xff0c;实现前所未有的沉浸式体验。 更可接入专业三维软件和应用平台&#xff0c;进行深度的模型开发与场景落地。 支持超大复杂…...

    2024/4/26 22:40:40
  4. FastAPI Web框架教程 第1章 快速上手

    1.1 fastapi介绍 简介&#xff1a; FastAPI 是一个高性能&#xff0c;易于学习&#xff0c;高效编码&#xff0c;生产可用的Python Web异步框架 FastAPI 适合来写API&#xff0c;使用 Python 3.6 并基于标准的 Python 类型提示 核心特性&#xff1a; 速度快&#xff1a;可…...

    2024/4/25 6:24:33
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/4/28 13:52:11
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/28 3:28:32
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/26 23:05:52
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/28 13:51:37
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/28 1:28:33
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/27 9:01:45
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/28 1:34:08
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/28 1:22:35
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/25 18:39:14
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/4/26 23:04:58
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/27 23:24:42
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/28 5:48:52
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/26 19:46:12
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/27 11:43:08
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/27 8:32:30
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57