Java编程技能训练

java技术包括

java语言 虚拟机 Class文件格式 java api类库 第三方java类库

java开发工具 虚拟机 java api成为java jdk

java API中的java se API子集和虚拟机成为jre

 

Java编程规范:

类名和接口名:首字母大写,多个单词时,每个单词的首字母大写

方法名和变量名:首字母小写,多个单词时,每个单词的首字母小写

包名:小写形式

常量名:大写,多个单词时,使用下划线。

 

JVM与实体机的相同点:

JVM与实体机一样需要一套合适的指令集,这个指令集能够被JVM解析执行,这个指令集称为JVM字节码指令集。

只要符合class文件规范的字节码都可以被JVM执行。

除了指令集外,JVM由4部分组成:

类加载器,在JVM启动时或在类运行时将需要的class加载到JVM中

执行引擎,负责执行class文件中包含的字节码指令

内存区,将内存划分成若干个区以模拟实际机器上的存储、记录和调度功能模块

本地方法调用,调用c或者c++实现的本地方法代码返回结果

JVM的功能:提供垃圾回收功能 提供运行时环境

 

java源文件有包含多个类或者接口定义,但至多只有一个类或接口是public的,且java源文件必须以public类型的类的名字命名。

 

java源文件最多只能有一个package语句,且package语句必须位于java源文件第一行。

 

包引入语句import

java虚拟机不会在import位置将包中所有类进行加载。

import中需要注意问题:

1.一个类引用了来自两个不同包的同名类则在程序中必须通过类的完整类名来区分这两个类。

import com.abc.bookstore.Book;

import com.abc.hotel.Book;

public classs Appmain{

  public static void main(String args[]){

    com.abc.bookstore.Book book1 = new com.abc.bookstore.Book();

  }

}

2.import com.abc.*;

import com.abc.def.*;

import com.abc.def.ghi.*;

能否省略为 import com.abc.*;

不行,上述的各个包都是相互独立的。

 

package和import语句的顺序可以调换吗?

 

javac -sourcepath 目录1 -classpath 目录2 -d 目录3 目录4

目录1是源文件的根目录, 目录二是用户的classpath 包含编译文件所需要的class文件

目录3是生成的java类文件的存放路径  目录4是编译的源文件的完整路径加文件名。

 

java命令

运行java程序,首先启动JVM then加载相关的类 then 调用main方法

 

JVM为提供了程序运行时环境,其中最重要的资源是运行时数据区,运行时数据区是操作系统为JVM进程分配的内存区域。

运行时数据区又分为

堆区:存储的全是对象(不同于基本类型)

方法区:被所有线程共享。包含class类型信息和static变量

java栈区:每个线程包含一个栈,栈中保存基本数据类型和自定义对象的引用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值