首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Java-“this”和“名.this”以及“名.class”的区分和详解

引言: 对于以上三个语法结构的区分,需要先理解Class 所有对象的以及调用了静态方法的都需要在对象创建之前在JVM虚拟机中加载,加载内容被称为“对象”,每个对象是唯一且是不可变的。...运行程序时,Java虚拟机(JVM)首先检查是否所要加载的对应的Class对象是否已经加载。如果没有加载,JVM就会根据名查找.class文件,并将其Class对象载入。...基本的 Java 类型(boolean、byte、char、short、int、long、float 和 double)和关键字 void 也都对应一个 Class 对象,和其名字相同的对象名。...classOfString2=Class.forName("java.lang.String"); System.out.println(classOfString2);...名.this : 名.this一般用于内部类调用外部类的对象时使用,因为内部类使用this.调用的是内部类的域和方法,为了加以区别,所以使用名.this来加以区分

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

    区分接口和抽象

    6 如果实现了一个接口,那么必须实现接口里面的所有抽象方法,否则要被定义为抽象。 2 . 抽象 1 如果将一个声明为abstract,此类不能生成对象,只能被继承使用。...2 抽象方法必须存在于抽象中。 3 抽象中可以有一般的变量和一般的方法。 4 子类继承抽象必须实现其中抽象方法,除非子类为抽象。...接口和抽象的区别 1 接口只能包含抽象方法,抽象可以包含普通方法。 2 接口只能定义静态常量属性,抽象既可以定义普通属性,也可以定义静态常量属性。...2 如果许多实现了某个接口,那么每个都要用代码实现那些方法 3 如果某一些的实现有共通之处,则可以抽象出来一个抽象,让抽象实现接口的公用的代码,而那些个性化的方法则由各个子类去实现。...如果单从具体代码来看,对这两个概念很容易模糊,甚至觉得接口就是多余的,因为单从具体功能来看,除多重继承外(C#,Java中),抽象类似乎完全能取代接口。但是,难道接口的存在是为了实现多重继承?

    46130

    Java 并发包提供了哪些并发工具

    Java 并发包提供了哪些并发工具 Java 基础并发工具 提供了比 synchronized更加高级的各种同步结构,包括 CountDownLatch, CyclicBarrier、 Semaphore...多线程编程要注意哪些 利用多线程提高程序的扩展能力,以达到业务对吞吐量的要求。 协调线程间调度、交互,以完成业务逻辑。 线程间传递数据和状态,这同样是实现业务逻辑的需要。...并发包工具需要掌握哪些 从总体上,把握住几个主要组成部分 理解具体设计、实现和能力。...再深入掌握一些比较典型工具的适用场景、用法甚至是原理,并熟练写岀典型的代码用例 CountDownLatch 允许一个或者多个线程等待操作完成 CountDownLatch 是不可以重置的,无法重用...https://www.baeldung.com/java-phaser 线程安全的集合 线程安全Map ,List 和 Set。

    1.2K10

    详解java中静态方法有哪些_java中的静态变量

    定义: 在中使用static修饰的静态方法会随着的定义而被分配和装载入内存中;而非静态方法属于对象的具体实例,只有在的对象创建时在对象的内存中才有这个方法的代码段。...原因: 因为静态方法和静态数据成员会随着的定义而被分配和装载入内存中,而非静态方法和非静态数据成员只有在的对象创建时在对象的内存中才有这个方法的代码段。...引用静态方法时,可以用名.方法名或者对象名.方法名的形式。...对以上描述进行验证的代码示例: import java.util.*; public class TestStatic { public static void main(String[]args...(2)静态不能引用非静态这一特性,是由于静态的会随着的定义而被分配和装载入内存中这一关键点决定的;如果静态引用了非静态的,根本无法从内存中找到非静态的代码段,势必会出错,这种做法是Java虚拟机决不允许的

    1.4K10

    Object哪些方法?

    圣诞节快乐 Object 是层次结构的根。每个都使用 Object 作为超。所有对象(包括数组)都实现这个的方法。...简单来说就是,Object是所有的父,包括我们所写的,我们在使用的时候就会利用Object中的方法~ 以下两种类的定义的最终效果是完全相同的: class Person { } class...Person extends Object { } Object核心方法如下。...答:native关键字标识的Java方法为本地方法,底层是由C/C++程序编译后dll文件,Java加载dll文件后,可通过本地方法调用dll函数。...sleep方法属于thread,sleep方法导致程序暂停执行指定的时间,让出CPU给其他线程,但是它的监控状态依然保持,当指定的时间到了又会恢复运行状态。

    1.3K10

    器官培养效应和单细胞测序效应的区分

    最近在系统性总结器官相关研究,发现2015发表在CELL杂志的-CRC-器官研究里面居然还有单细胞数据,它不仅仅是器官应用到肿瘤领域研究的早期代表作,而且也早于单细胞成为科研爆发热点期。...这些“器官”培养物适用于大规模的药物筛查来检测与药物敏感性相关的一些遗传改变,为采用个体化治疗改善癌症患者的临床结局铺平了道路。...器官单细胞转录组表达矩阵相关性热图 这个其实是不好解释的,虽然我能理解作者想传达的观点是,尽管我们把癌症病人的肿瘤组织培养成为了器官这个研究模型,但是这个模型仍然是比较好的保持这病人的异质性。...就是说,并没有因为这个器官培养过程导致它们统一展现出来一个非常强烈的器官特性,如果出现器官这个影响很大的变量,它就会成为第一主成分,不管是主成分图还是上面的热图,都不会出现病人聚效应。...最后思考一下,如何区分实验的器官培养效应和单细胞效应呢?

    85420

    java常量有哪些_Java中的常量有哪些

    JAVA常量就是在程序中固定不变的值,是不能改变的数据。例如数字1、字符“a”、浮点数3.2等。那么java的常量有哪些呢?在Java中,常量包括整型常量、浮点数常量、布尔常量、字符常量等。...在JDK7.0中允许使用字面值来表示二进制数,前面要以0b或0B开头,目的是为了和十进制进行区分,如0b01101100、0B10110101。...之所以能这样表示,是因为Java采用的是Unicode字符集,Unicode字符以u开头,空白字符在Unicode码表中对应的值为’u0000’。...5、布尔常量 布尔常量即布尔型的两个值true和false,该常量用于区分一个事物的真与假。 6、null常量 null常量只有一个值null,表示对象的引用为空。...以上就是动力节点java学院小编针对“Java中的常量有哪些?”

    4.3K30
    领券