`
yimi128
  • 浏览: 56122 次
  • 来自: ...
社区版块
存档分类
最新评论

有关java的一些基础知识

阅读更多

1。常量一种特殊的变量,因为编译器把他们当作值(value)而不是域(field)来对待。如果你的代码中用到了常变量(constant variable),编译器并不会生成字节码来从对象中载入域的值,而是直接把这个值插入到字节码中。这是一种很有用的优化,但是如果你需要改变final域的值,那么每一块用到那个域的代码都需要重新编译。 不是所有的final数据都是常量,只有编译期能确定数值的才能算是常量。

 

2。在接口中,定义的域(field)默认是public static final的

     而定义的方法默认是public abstract的。

3。内部类可以在其他类中定义,也可以在一个语句块内部定义,也可以在表达式内部匿名定义。

    a。内部类可以使用包含它的类的静态和实例成员变量,即使他们是private的,但是对于局部变量,只有声明为final的才可以被内部类访问。

    b。若声明为static,就不能访问其外部类的非静态成员。

    c。若想在内部类中声明任何static成员,则该内部类必须声明为static类。

    d。非静态的内部类,持有其外部类对象的引用,可以访问其所有成员,而静态内部类不持有其外部类对象的引用,所以只能访问其外部类的静态成员。

 

4。类成员变量有默认值,因为类成员变量在堆中赋初值。而局部变量必须赋值才能使用,否则会出现编译错误。因为局部变量使用的是栈内存,出于效率考虑,虚拟机不会为栈上的变量设置默认值。

 

5。类不能同时声明为final和abstract的,否则会编译错误。

 

6。子类方法只能抛出比父类范围更小的异常(如父类的异常或者其父类异常的子类)。子类方法的可见性不能小于父类。即:子类不能比父类的限制更多,不然在使用父类引用指向子类对象时,可能会发生无法访问或者异常没有被catch的危险。

 

7。wait notify yield sleep

wait:当前线程进入信号量或者锁的待召队列,并且放弃信号量或者锁,只有等到其他线程发出notify通知后,才能进入就绪队列。

notify:当前线程发出通知,通知当前信号量或者锁的待召队列中的某个线程进入就绪队列,但是当前线程并不会放弃信号量或者锁,继续执行。

yield:当前线程停止执行,放弃执行权,进入就绪队列。

sleep:当前线程停止执行指定的时间,但是不会放弃持有的锁。

分享到:
评论

相关推荐

    第2讲 java语言基础知识

    第2讲 java语言基础知识第2讲 java语言基础知识第2讲 java语言基础知识第2讲 java语言基础知识第2讲 java语言基础知识第2讲 java语言基础知识第2讲 java语言基础知识第2讲 java语言基础知识第2讲 java语言基础知识第...

    java基础知识 ppt

    java基础知识,帮助初学者更快更好地掌握java。ppt内容具体易懂,希望对刚接触java的初学者有所帮助。

    Java基础知识点总结.docx

    Java是一种广泛使用的面向对象的编程语言,其基础知识涵盖了多个方面,包括语法、面向对象特性、异常处理、多线程...以上只是Java基础知识的一个概述,每个话题都值得深入探讨和实践,不断学习和总结是提升技能的关键。

    Java基础知识点和答案

    Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案Java基础知识点和答案...

    Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例.zip

    Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础知识学习:包括JVM虚拟机、对象模型等Java基础知识代码案例Java基础...

    java基础知识的培训ppt

    java基础知识的培训ppt,对于java初学者来说可以有一些作用。

    java面试基础知识点总结

    java面试基础知识点总结

    JAVA基础知识总结.

    JAVA基础知识总结 JAVA基础知识总结 JAVA基础知识总结

    Java基础知识总结.pdf

    ### Java基础知识精炼 #### 一、Java概述与发展历程 Java是一种高级编程语言,由Sun Microsystems公司的James Gosling等人于1991年开始研发,原名为Oak,旨在控制嵌入式设备如有线电视交换盒和PDA。1994年正式更名...

    java基础知识大全(必看经典)

    Java 基础知识大全 本资源摘要信息是 Java 基础知识大全的总结,涵盖了 Java 语言的基本概念、特点、历史发展等方面的知识点。以下是本资源摘要信息的详细内容: 一、 Java 语言的特点 * 面向对象:Java 语言是...

    java 基础知识总结

    自己在网上找的相对好一点的java复习资料,留个纪念 。详细讲述了Java课程的知识点

    Java基础知识总结

    Java基础知识总结 一些的基础知识 适合初学者和回顾以前的知识

    java面试基础知识点

    介绍Java求职面试过程过程中的相关知识点,分为java基础,web,框架等基础知识

    java基础知识总结

    java基础知识

    JAVA基础知识总结

    Java基础知识总结涵盖了Java程序设计语言的核心概念和常用知识点。在详细学习和总结这些知识点之前,首先需要对Java有一个整体的认识。Java是一种面向对象的编程语言,它具有跨平台的特性,即“一次编写,到处运行”...

    Java编程基础知识变量与数据类型

    资源名称:Java编程基础知识变量与数据类型资源目录:【】11957c6aed0bbd30e284837b53bc3a6f【】2.Java编程基础知识变量与数据类型1.数据类型初阶【】2.Java编程基础知识变量与数据类型10.浮点类型【】2.Java编程...

Global site tag (gtag.js) - Google Analytics