java文件类相关知识
-
Java的类名与文件名必须一致1.Java保存的文件名必须与类名一致; 2.如果文件中只有一个类,文件名必须与类名一致; 3.一个Java文件中只能有一个public类; 4.如果文件中不止一个类,文件名必须与public类名一致; 5.如果文件中不止一个类,而且没有public类,文件名可与任一类名一致。 当编写一个Java源代码文件时,此文件通常被称为编译单元(有时也称为转译单元)。每个编译单元都必须要有一个后缀为.java,而在编译单元内测可以 有一个public类,该类的名称必
-
Java文件操作类效率对比 前言众所周知,Java中有多种针对文件的操作类,以面向字节流和字符流可分为两大类,这里以写入为例:面向字节流的:FileOutputStream 和 BufferedOutputStream面向字符流的:FileWriter 和 BufferedWriter近年来发展出New I/O ,也叫NIO,里面又包装了两个类:NewOutputStream 和 NewBufferedWriter现在,我们建立测试程序,比较这些类写入文件的性能。机器配置" cdata_tag="style"> Processor Name: Intel Core i7 Processor Speed: 2.2 GHz Number of Processors: 1 Total Number of Cores: 4 L2 Cache
-
Java文件操作类效率对比前言众所周知,Java中有多种针对文件的操作类,以面向字节流和字符流可分为两大类,这里以写入为例:面向字节流的:FileOutputStream 和 BufferedOutputStream面向字符流的:FileWriter 和 BufferedWriter近年来发展出New I/O ,也叫NIO,里面又包装了两个类:NewOutputStream 和 NewBufferedWriter现在,我们建立测试程序,比较这些类写入文件的性能。机器配置" cdata_tag="style"> Processor Name: Intel Core i7 Processor Speed: 2.2 GHz Number of Processors: 1 Total Number of Cores: 4 L2 Cache (per Core): 256 KB L3 Cache: 6 MB
-
深入理解Java虚拟机04--类结构文件一.程序存储格式统一的程序存储格式:不同平台的虚拟机于所有平台都统一使用程序存储格式——字节码(ByteCode);Java 虚拟机不关心 Class 文件的来源,而只和“Class文件"这种二进制文件格式关联,也就是说Java虚拟机只认识“Class"文件;Java 编译器可以把 Java 程序代码编译成虚拟机所需要的Class 文件;二.Class 文件结构Class 文件是以 8 个字节为单位的二进制流,紧凑排列,中间没有空隙;如果想查看一个 Class 文件除了通过 winHex 编译器看到字节码,也可以通过 javap -verbose xxx.Class 输出字节码内容,这样看起来比较直观。1、基本类型无符号数:定义:基本的数据类型,u1、u8表示1个字节,8个字节。使用:可以用来描述数字、索引、引用,utf-8格式的字符串;表:定义:多个无符号数和其他表组成的复合数据类型;通常以“_info” 结尾。使用:描述有层次关系的复合结构数据;2、魔数与版本魔数:每个Class文件
java文件类相关课程
java文件类相关教程
- 2. 创建 Java 类 要在 Eclipse 中创建 Java 类,我们通常会通过如下步骤:在项目资源浏览器视图中,鼠标右键我们想存放的 Java类的文件夹,在弹出的菜单中 New -> Class,如下图所示:接着在弹出的新建 Java类的窗口中填写类相关的信息即可,其中我们需要关注的信息如下:Source Folder 字段默认值是项目的文件夹,通常不需要更改;Package 字段输入包名;Name 字段输入类名;在 Which method would you like te creat 的部份,勾选 public static void main(String[] args) 的话,会帮助我们创建 main 方法。如下图所示:Tips:包名并非必填项,如果不填写包名,将会创建默认包名,这不是一种好的做法,所以还是建议创建类的时候也填写包名点击 Finish 后,我们将会看到 Eclipse 会帮助我们创建对应的包和 Java 类文件,如下图所示:
- 5.1 文件类型 最左侧一列表示该文件的类型:“-” 表示普通文件;“d” 表示目录;“l” 表示链接文件;“p” 表示管理文件;“b” 表示块设备文件。
- 3.2 Java 文件编写 以上代码主要实现了两个 Button 及一个 ScrollView,可以看到 ScrollView 中只有一个 LinearLayout,而 LinearLayout 中只有两个 Button,所以我们需要在 Java 代码中动态添加 Button,这里也可以让大家熟悉一下如何动态创建并添加 Button。接下来在 Java 代码中主要做两件事:为两个 Button 设置点击事件,分别实现回到顶部及跳转到底部;往 ScrollView 中添加 View,并绑定点击事件。代码如下:package com.emercy.myapplication;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.LinearLayout;import android.widget.ScrollView;import android.widget.Toast;public class MainActivity extends Activity implements View.OnClickListener { public static final int BUTTON_COUNT = 10; private ScrollView mScrollView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.bt_to_top).setOnClickListener(this); findViewById(R.id.bt_to_bottom).setOnClickListener(this); mScrollView = findViewById(R.id.scrollView); LinearLayout layout = findViewById(R.id.button_group); for (int i = 0; i < BUTTON_COUNT; i++) { Button button = new Button(this); LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); params.topMargin = 100; layout.addView(button, params); button.setOnClickListener(this); button.setText(i + ""); } } @Override public void onClick(View v) { switch (v.getId()) { case R.id.bt_to_top: mScrollView.fullScroll(ScrollView.FOCUS_UP); break; case R.id.bt_to_bottom: mScrollView.fullScroll(ScrollView.FOCUS_DOWN); break; default: Toast.makeText(this, "当前点击的是第" + ((Button) v).getText() + "个Button", Toast.LENGTH_SHORT).show(); break; } }}效果如下:我们在代码中通过 for 循环往 ScrollView 中添加了 10 个 Button,动态添加一个 View 主要有以下 4 步:通过构造器创建 View。设置其属性(宽、高、margin、padding 等)。设置响应事件(比如点击、触摸、滚动等)。添加到相应的 ViewGroup 中。我们在创建 Button 的同时通过setText及setOnClickListener设置了文本及点击事件,然后在点击的时候展示当前 Button 的序号。
- 1.4 源代码文件 既然源代码需要提供给计算机执行,我们就要将源代码以文件的形式保存在计算机的磁盘上。需要注意的是:源代码文件的命名必须与类名相同,且后缀名为.java。例如:HelloWorld 类对应的源代码文件名应该为 HelloWorld.java,而 ImmocStudent.java 源代码文件的对应类名为 ImmocStudent。
- 2.1 重命名文件 重构的操作通常可以通过鼠标右键调出来的上下文菜单中进行选择。比如,我们希望对我们的 Java 文件进行重命名,那么我们可以通过鼠标右键点击想要重命名的文件,然后选择 Refactor -> Rename,如下图所示:接着,在 New Name这一栏填写我们想要修改成的名称,比如我们希望修改 FirstTest.java 为 FirstTest2.java,如下图所示:点击 Next 后,Eclipse 将向我们展示如果我们执行了该重构操作将会发生的变更,以及预览,如下图所示:接着点击 Finish 后,这次重构就完成了。可以看到,我们通过重构操作对 Java 文件进行重命名后,Eclipse 会自动帮助我们同步修改文件中的类名。同理,我们如果对包名(文件夹)进行重命名, Eclipse 也会帮我们自动修改包下所有Java 文件中的包名信息,操作方式和重命名文件一样,大家可以自行尝试。
- 2. Class文件数据类型 根据 Java 虚拟机规范的规定,Class 文件格式采用一种类似于 C 语言结构体的伪结构来存储数据,这种伪结构中只有两种数据类型:无符号数和表。无符号数:无符号数属于基本的数据类型,以 u1、u2、u4、u8 来分别代表 1 个字节、2 个字节、4 个字节和 8 个字节;无符号数可以用来描述数字、索引引用、数量值或者按照 UTF-8 编码构成的字符串值;表:表是由多个无符号数或者其他表作为数据项构成的复合数据类型,所有表都习惯性地以“info”结尾。表用于描述有层次关系的复合结构的数据,整个 Class 文件本质上就是一张表。Tips:无符号数和表这两种类型的数据,初次来看非常的抽象,从概念层面来看似乎很难理解。我们无需着急, 本节所讲述的魔数,次版本号,主版本号以及常量池计数器皆为无符号数类型,而常量池为表类型,讲解这些结构时,我会为大家提供示意图,使学习者从感官上看到这两种数据类型,从而彻底理解这两种数据类型。
java文件类相关搜索
-
j2ee
j2ee是什么
jar格式
java
java api
java applet
java c
java jdk
java list
java map
java script
java se
java socket
java swing
java switch
java web
java xml
java 程序设计
java 多线程
java 环境变量