首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Java笔记(

 高性能 Java最初发展阶段,总是被人诟病“性能低”;客观,高级语言运行效率总是低于低级语言的,这个无法避免。Java语言本身发展中通过虚拟机的优化提升了几十倍运行效率。...业界发展,我们也看到很多C++应用转到Java开发,很多C++程序员转型为Java程序员。  分布式 Java是为Internet的分布式环境设计的,因为它能够处理TCP/IP协议。...== 但是,并不是说学习了java,以后所有的东西都要用java开发了:某些领域其他语言有更出色的表现,比如,Objective C和后来的Swift在iOS设备就有着无可取代的地位。...很容易被其中的很多概念弄的傻傻分不清楚,首先从概念理解一下吧,JDK(Java Development Kit)简单理解就是Java开发工具包,JRE(Java Runtime Enviroment)...JDK是面向开发者的,JRE是面向使用JAVA程序的用户,上面只是简单的区别 通过上图发现发现有两个JRE文件夹,如果细看里面的内容基本是一样的,如果是只是Java程序使用者,那么只会有最外层的那个JRE

66910

一分钟了解区块链的通证经济

因此我和我的团队决定写一篇关于区块链的通证经济的关系的入门文章,以求简单直观的向不懂区块链技术但又想了解区块链与通证经济知识的文章。 首先,我们先来了解什么是区块链。...比如你在淘宝买一本书交易流程是:你将钱转给支付宝——支付宝收款后通知卖家发货——卖家发货——你确认收货——支付宝把你预付的资金打给卖家。...在区块链则去掉了中心化,你和卖家直接交易,然后双方宣布完成交易就行了。当然,真正的区块链没有那么简单,否则人人都是比尔盖茨了,我们只用搞懂区块链的特征。...事实,通证可以代表一切权益证明,从身份证到学历文凭,从货币到票据,从钥匙、门票到积分、卡券,从股票到债券,人类社会全部权益证明,都可以用通证来代表。...一个准大学生的专业不能仅仅只靠志愿选择决定,而是应该根据多标准来评定,在我们这个一个多元化的信息时代,区块链的通证经济将能解决这个问题。

1.2K50

Java 泛型(

它不是类型安全的(Java 的编译器对于类型转换的错误是检测不到的,在运行时执行到 checkcast这个字节码指令时,如果类型转换错误才会抛出 ClassCastException ),并且要求在检索封装对象时使用显式类型转换...其实泛型也可以看成是 Java 的一种语法糖。...(可以多去看看 Java 集合中是怎么利用泛型的) 怎么用 泛型类 public class GenericClass{ // key 这个成员变量的类型为 T,T 的类型由外部使用时指定...这样我就很方便创建一个数组,其实在底层实现是编译器帮我们去 new 数组这个操作了。 public class GenericTest { // 巧妙利用语言的特性。...看成所有类型的父类来理解(也可以把这个看成 Java 语言的一种规范)。

42431

Java 反射基础(

本博文主要记录我学习 Java 反射(reflect)的一点心得,在了解反射之前,您应该先了解 Java 中的 Class 类,如果您不是很了解,可以查看我的另一篇博客《浅谈 Java 的 Class...我理解的 Java 反射机制 参考了许多博文,总结了以下个人观点,如您有更好的看法还望指导: Java 反射机制在程序运行时,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性...类的名称:obj.SonClass public java.lang.String mSonBirthday public java.lang.String mFatherName public...类的名称:obj.SonClass private java.lang.String mSonName protected int mSonAge public java.lang.String...native void wait( long arg0, ) throws java.lang.InterruptedException public boolean equals( java.lang.Object

54090

java内存管理(

二.java内存划分 方法区 (线程共享)  常量  静态变量  JIT(即时编译器)编译后代码也在方法区存放 堆内存(线程共享) 垃圾回收的主要场地 程序计数器  当前线程执行的字节码的位置指示器 Java...程序计数器的特点 是一块较小的内存空间 线程私有,每个线程都有自己的程序计数器 生命周期:随着线程的创建而创建,随着线程的销毁而销毁 是一个唯一不会出现的OutOfMemoryError的内存区域 Java...虚拟机栈 定义: 描述Java方法运行过程的内存模型 Java虚拟机栈会为每一个即将运行的Java方法创建一块叫做”栈帧”的区域,用于存放该方法运行过程中的一些信息,如  局部变量表  /操作数栈  /...虚拟机栈会出现两种异常:StackOverFlowError和OutOfMemoryError StackOverFlowError若Java虚拟机栈的大小不允许动态扩展,那么当前线程请求的栈的深度超过当前的...Java虚拟机栈的最大深度是,就会抛出此异常 OutOFMemoryError,若允许动态扩展,那么当前线程的请求的栈内存用完了,无法再动态扩展时,抛出此异常 Java虚拟机栈也是线程私有,随着线程创建而创建

67010

Java 面向对象(

前言 学习了面向对象编程的思想,今天就来看看面向对象编程思想在 Java 中的体现 - 类。以及有关类的相关知识,比如属性、方法、引用等。...而在 Java 语言中,属性的命名虽然没有强制规定,但是一般都是有一套大家通用的命名方法,即: 若属性是一个单词组成,那么一般都是小写。 若属性是多个单词组成,那么则采用驼峰法。...关于更多的命名规定,推荐参考阿里巴巴出品的 《Java 开发手册》,下载地址:https://github.com/cunyu1943/ebooks 方法 而除开属性之后,每个对象还能够有许多其他的功能...简单来说,就是在 Java 的一个类中,我们可以创建多个相同名字的方法,但是这些方法之间的参数和返回值有所不同。

18220

Java漫谈-String

由于具体关注的内容的特殊性,如无特殊注明,本文讨论均基于Java8。 不可变 String对象是不可变的。...当执行main方法中的new语句时,JVM会执行的字节码类似: 0: new #2 // class java/lang/String 3: dup...实际调用的指令是invokespecial,而在实际调用前要把需要的参数按顺序压到操作数栈。...在上面的字节码例子中,压参数的指令包括dup和ldc两条,分别把隐藏参数(新创建的实例的引用,对于实例构造器来说就是“this”)与显式声明的第一个实际参数("123"常量的引用)压到操作数栈 最终如图...;创建了多少个String实例”来面试了吧 The SCJP Tip Line Strings, Literally JEP 122:删除永久世代 JDK 8 Milestones JVM指令详解(

60210

Java基础-语法(

本节简单介绍一下java的基础语法,了解java的语法规范、注释、标识符及修饰符相关内容。 1、语法规范 1)大小写敏感:如标识符 Hello 与 hello 是不同的。 2)类名:首字母大写。...源文件名的后缀为 .java(注意区别源文件和字节码文件,字节码文件后缀为 .class,不了解的可以看我的一篇文章-运行java) 5)主方法(main方法)入口:public static void...main(String[] args) 方法是所有的 Java 程序的入口,都是从main方法处开始执行。...输入如下解决: javadoc -encoding UTF-8 -charset UTF-8 -author -version Test.java 完成后找到同目录下生成的一个 Test.html 文档...3、标识符 Java 所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。 3.1 命名规则 以字母、美元符($)、或者下划线 _ 开始。

15532
领券