展开

关键词

Java 回顾 ( Revisiting Java )

最近在看一些工程代码,于是看了看设计模式,看设计模式之前发现Java是先修知识,又重新补了一遍Java,温故知新,获得一些新的体会。 本文不打算作为“Java知识点详细梳理”,“10分钟学会Java”之类的文章,仅作为博主自己的一个回顾,涉及的内容也无定法。 Java应该是目前用的最多的编程语言,以前觉得Java老要点点点(调用方法),变量名也很长,C++/Python很少代码写完的东西Java可能要写很多行…… 觉得挺麻烦的,不过Java风靡自有其风靡的理由 Java中最关键的概念是面向对象,面向对象最关键的东西就是类和对象,所有的Java程序都定义在类中,你不能像python那样,打开.py文件就开始写东西,就可以执行了,也不像C++,定义一个main函数即可运行 Reference *《Head First Java

21620

Java 异常|Java Exceptions

本文是对以下内容的分析:Java异常设计,Java异常可以告诉什么,以及如何使用Java异常。Java ExceptionsJava Exception 是为处理异常应用程序行为而创建的类。 在本文中,我将解释如何使用 Java Exception 类以及如何在考虑现有 Java Exceptions 设计的情况下创建异常结构。 Java 异常概念是 Java 中的重要里程碑之一,每个开发人员都必须知道它。 Java 异常结构的信息量比你想象的要多Java 异常的结构非常有用,可以告诉开发人员一组重要的事情(如果开发人员正确使用此结构)。 Java错误Java Error case 代表异常情况。一旦出现错误,应用程序可能会关闭。Java异常与错误不同,Java 异常有机会从问题中恢复应用程序并尝试保持应用程序运行。

18540
  • 广告
    关闭

    【玩转 Cloud Studio】有奖调研征文,千元豪礼等你拿!

    想听听你玩转的独门秘籍,更有机械键盘、鹅厂公仔、CODING 定制公仔等你来拿!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Java基础-初识Java

    Java为什么被发明? Green项目。 应用环境:像电视盒这样的消费类电子产品 要求:语言本身是中立的,也就是跨平台 Java的发明人? 2006年,J2SE 6.0 (1.6.0) Mustang野马.此时,Java的各种版本被更名,取消其中的数字"2": J2EE更名为Java EE, J2SE更名为Java SE,J2ME更名为Java Sun是一家极具创新能力的公司, 但是没能利用Java构建一个强有 力、可变现的生态系统,没打好Java这张牌。 2008年金融危机给sun公司致命的打击 2009年4月20日甲骨文以现金收购Sun微系统公司,交易价格达74亿美元 Java三大版本 J2SE Java的标准版本 (Java2 Standard 此时,Java的各种版本被更名,取消其中的数字"2": J2EE更名为Java EE, J2SE更名为Java SE,J2ME更名为Java ME

    26720

    JavaJava特点

    1.简单 Java最初是为对家用电器进行集成控制而设计的一种语言,因此它必须简单明了。Java语言的简单性主要体现在以下三个方面: Java的风格类似于C++,因而C++程序员是非常熟悉的。 而在Java语言中, Java自带的虚拟机很好地实现了跨平台性。 Java源程序代码经过编译后生成二进制的字节码是与平台无关的,但是可被Java虚拟机识别的一种机器码指令。 Java自已操纵内存减少了内存出错的可能性。Java还实现了真数组,避免了覆盖数据的可能。这些功能特征大大缩短了开发Java应用程序的周期。 但JAVA编译器就不同了。JAVA编译器产生的目标代码(J-Code) 是针对一种并不 存在的CPU–JAVA虚拟机(JAVA Virtual Machine),而不是某一实际的CPU。 Java编译器本身就是用Java语言编写的。Java运算系统的编制依据POSIX方便移植的限制,用ANSIC语言写成。Java语言规范中也没有任何”同具体实现相关”的内容。

    7030

    Java——Java泛型

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架。 :表示不确定的 java 类型 T (type): 表示具体的一个java类型 K V (key value): 分别代表java键值中的Key Value E (element) :代表Element 这就是java的泛型擦除。 泛型方法的例子请参阅Java集合类框架。 如何阻止Java中的类型未检查的警告?

    41831

    Java Annotation(Java 注解)

    如果你想知道java annotation是什么? ; 5 6 import java.lang.annotation.Documented; 7 import java.lang.annotation.ElementType; 8 import java.lang.annotation.Retention; 9 import java.lang.annotation.RetentionPolicy; 10 import java.lang.annotation.Target 6 import java.sql.Connection; 7 import java.sql.DriverManager; 8 import java.sql.PreparedStatement; 9 import java.sql.ResultSet; 10 import java.sql.SQLException; 11 12 /** 13 * 14 * @author Hongten

    47540

    Java并发—Java线程

    大家好,这里是淇妙小屋,一个分享技术,分享生活的博主 后续会发布更多MySQL,Redis,并发,JVM,分布式等面试热点知识,以及Java学习路线,面试重点,职业规划,面经等相关博客 转载请标明出处 Java线程面试题 0.1 线程占用的内存 JDK1.4默认单个线程占用256K JDK1.5默认单个线程占用1M 可以通过-Xss参数设定 0.2 为什么要使用线程池 手动创建线程池的缺点 不受风险控制

    10520

    Java|Java面向对象

    面向过程就是我们需要实现一个功能的时候,我们需要实现功能的每一个步骤都需要自己来写,相对的面向对象则是,在java里我们需要实现一个功能,我们直接从JDK调用现成的类,比如在执行数组相关操作时,我们直接调用 2 类的定义以及与对象的关系 我们每用java写一个程序,都会定义一个类,java作为一门面向对象编程语言,那类与对象的关系会是什么呢。

    18841

    Java-Java反射

    三个主要的反射类 Constructor Method Field Java反射概述 Java语言允许通过程序化的方式间接对Class进行操作。 使用反射不同于常规的Java编程,其中它与 元数据–描述其它数据的数据协作。Java语言反射接入的特殊类型的原数据是JVM中类和对象的描述。 ---- 示例 Code 我们将用下面这个例子来了解Java反射机制。 如果使用Java的反射机制 该如何控制目标类呢? 此外Java还未包提供了Package反射类,在Java5.0中还未注解提供了AnnotatedElement反射类。

    19450

    Java——Java面向对象

    该系列博文会告诉你如何从入门到进阶,一步步地学习Java基础知识,并上手进行实战,接着了解每个Java知识点背后的实现原理,更完整地了解整个Java技术体系,形成自己的知识框架。 概述: Java是面向对象的程序设计语言,Java语言提供了定义类、成员变量、方法等最基本的功能。 Java的继承具有单继承的特点,每个子类只有一个直接父类。 2、访问修饰符: Java提供了3个访问修饰符:public、protected和private,另外还有一个默认的修饰符default,Java的访问控制级别如下图所示: ? Java中多态的实现方式:接口实现,继承父类进行方法重写,同一个类中进行方法重载。

    23310

    Java(6)-java线程

    多线程是 Java 语言的一个很重要的特征。 多线程程序设计最大的特点就是能够提高程序执行效率和处理速度。Java 程序可同时并行运行多个相对独立的线程。 Java 提供的多线程机制使一个程序可同时执行多个任务。线程有时也被称为小进程,它是从一个大进程里分离出来的小的独立的线程。由于实现了多线程技术,Java 显得更健壮。 程序与程序ThreadDemo1.java表面上看运行结果相同,但是仔细对照会发现,程序OnlyThread.java中对 run方法的调用在程序ThreadDemo1.java中变成了对 start 也就是说看java是运行在什么操作系统上,java这个应用程序进程的线程调度算法就是什么。 Java SE 还声明JVM可以任何方式实现线程的优先级,甚至忽略它的存在。 3、在Linux上Java线程一对一地映射到内核级线程上。

    12920

    JavaJava简介

    image.png 随着Java的发展,SUN给Java又分出了三个不同版本: Java SE:Standard Edition Java EE:Enterprise Edition Java ME:Micro Java EE是企业版,它只是在Java SE的基础上加上了大量的API和库,以便方便开发Web应用、数据库、消息服务等,Java EE的应用使用的虚拟机和Java SE完全相同。 Java ME就和Java SE不同,它是一个针对嵌入式设备的“瘦身版”,Java SE的标准库无法在Java ME上使用,Java ME的虚拟机也是“瘦身版”。 毫无疑问,Java SE是整个Java平台的核心,而Java EE是进一步学习Web应用所必须的。 我们熟悉的Spring等框架都是Java EE开源生态系统的一部分。 JDK:Java Development Kit JRE:Java Runtime Environment 简单地说,JRE就是运行Java字节码的虚拟机。

    9910

    Java】01 初识 Java

    一、Java 简介 1.1 Java 发展史 —————— 选自 《 疯狂 Java 讲义(第四版)》    Java 语言的诞生具有一定的戏剧性,它并不是经过精心策划、制作,最后产生的划时代产品,从某个角度来看 这标志着 Java 已经吹响了向企业、桌面和移动三个领域进军的号角,标志着 Java 已经进入 Java2 时代,这个时期也是 Java 飞速发展的时期。    1.3 Java 相关概念 1.3.1 JVM    JVM 是 Java Virtual Machine( Java 虚拟机)的缩写,就是我们常说的java虚拟机。 Java 语言使用 Java 虚拟机屏蔽了与具体平台相关的信息,使得 Java 语言编译程序只需生成在 Java 虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。    Java 虚拟机本质上就是一个程序,当它在命令行上启动的时候,就开始执行保存在某字节码文件中的指令。Java 语言的可移植性正是建立在 Java 虚拟机的基础上。

    26030

    Java面试——Java基础

    所有的 Java虚拟机实例必须在每个类或接口被 Java程序“首次主动使用”时才初始化它们。 八、java -> class -> 执行 ---- Java程序运行时,必须经过编译和运行两个步骤。首先将后缀名为.java的源文件进行编译,最终生成后缀名为.class的字节码文件。 Java.lang.ClassNotFoundException Java.lang.NoSuchMetodException Java.io.IOException Exception:一般分为 Checked 【1】Checked 异常:只有 java语言提供了 Checked异常,Java 认为 Checked异常都是可以被处理的异常,所以 Java程序必须显示处理 Checked异常。 【8】Date/Time API (JSR 310):Java 8 新的 Date-Time API (JSR 310)受Joda-Time的影响,提供了新的 java.time包,可以用来替代 java.util.Date

    22731

    Java新特性总结(Java 8Java 9Java 11)

    最近经常有一些"为啥不使用Java新特性"的观点在讨论中被提及。想了想也确实,事物的演进总是围绕着它需要发展的方向进行衍生,为什么不顺势而为呢?为什么不使用Java的新特性呢? 下面根据生产平台的不同进行Java新特性的总结。 1、 Java 8 新特性 Java 8 (又称为 jdk 1.8) 是 Java 语言开发的一个主要版本。 - Stream API −新添加的Stream API(java.util.stream)      把真正的函数式编程风格引入到Java中。 /jdk9-doc-downloads-3850606.html) 3、 Java 11 新特性  2018年09月25日,Oralce 正式发布了 Java 11,这是据 Java 8 以后支持的首个长期版本 - 化繁为简java11:在我们的认知里面,要运行一个 Java      源代码必须先编译,再运行,两步执行动作。而在未来的 Java 11 版本中,通过一个java命令就直接搞定了。

    13511

    Java 9 到 Java 17之Java 12

    上一篇说完了Java11,本篇接着说一下Java12.Java 12 对开发者有用的特性并不是特别多,不过实用性还是有的 字符串增强 Java 12 进一步对字符串操作进行增强,增加了两个方法。 来实验一下: String text = " Hello \n Java12"; System.out.println("缩进前"); System.out.println String txt = "hello "; // hello hello String s = txt.transform(str -> str.repeat(2)); ❝Java 基于内容的文件匹配 Java 12 在Files工具类中增加了一个新的静态方法Files.mismatch(Path,Path),用来找两个文件内容(byte)不一样的地方,返回两个文件内容中第一个不匹配字节的位置 其它 除了上面以外,Java12还有一些预览属性和JVM增强功能,并没有太多的亮点。

    14940

    Java 9 到 Java 17之Java 9

    Java 17 是Java 最重要的一个LTS版本之一,但是直接从Java 8 过渡到Java 17跨度太大了,势必有些困难。 所以胖哥抽时间梳理了一下从Java 9到Java 17的一些常用API的变动。今天先来看看Java 9 都有什么东西。 Java 9 Java 9 最大的变化就是引入了一个JShell和模块化,日常并没有用太多,所以今天不花时间在这些功能上面。 Stream扩展 Stream API 是Java 8中引入的最重要的特性之一。在Java 9中Stream进一步得到了加强。 任何实现了java.lang.AutoCloseable接口的对象,和实现了java.io.Closeable接口的对象,都可以当做资源使用。

    24230

    Java 9 到 Java 17之Java 11

    Java 11是自Java 8以来的又一个LTS版本,是目前全球使用最多的LTS版本之一。今天我们接着在Java 9 到 Java 17系列文章中来认识针对普通开发者的Java 11。 字符串API增强 在Java 11中,针对String的操作进一步得到加强。避免我们在很常见的场景中引入额外的、复杂的API。 var可以用于修饰Lambda局部变量 在Java 10中引入的var来进行类型推断。 ❝HttpClient 的包名由 jdk.incubator.http 改为 java.net.http。 在年初的Java生态调查数据显示Java 11的用户数量大幅增长,成为了主流版本选择之一。

    25940

    JAVA基础☞探针技术】Java探针-Java Agent技术

    1、原理:基于javaAgent和Java字节码注入技术的java探针工具技术原理 ? 3、实例: JavaAgent 是JDK 1.5 以后引入的,也可以叫做Java代理。 代码: package com.shanhy.demo.agent; import java.lang.instrument.ClassFileTransformer; import java.lang.instrument.IllegalClassFormatException ; import java.security.ProtectionDomain; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javassist.ClassPool; import javassist.CtClass; import

    2K30

    扫码关注腾讯云开发者

    领取腾讯云代金券