菜鸟学java笔记1的简单介绍

本文目录一览:

菜鸟学习java,求大神解释下面的代码各段是什么意思,尽量详细,谢谢

Zip.java

import java.io.*;

import java.util.zip.*;

public class Zip {

static final int BUFFER = 2048; // 定义缓冲区大小

public static void main (Stringargv[]) {

try {

BufferedInputStream origin= null; // 创建带有缓冲区的inputstrream

FileOutputStream dest = new

FileOutputStream(“c:\\zip\\myfigs.zip”); // 创建文件输出流,并打开zip文件 CheckedOutputStream checksum = new

CheckedOutputStream(dest,new Adler32()); // 创建过滤流,并验证数据的完整性

ZipOutputStream out = new

ZipOutputStream(new

BufferedOutputStream(checksum)); // 创建压缩文件输出流,并传入参数

//out.setMethod(ZipOutputStream.DEFLATED);

byte data[] = newbyte[BUFFER]; // 创建字节数组

// get a list of files fromcurrent directory

File f = newFile(“.”); // 创建File变量读取根目录用于文件的读写

String files[] = f.list(); // 读取f文件夹下所有的文件名

for (int i=0; i files.length; i++) { // 根据文件名的数量进行循环

System.out.println(“Adding: “+files[i]); // 打印出添加的文件名到控制台

FileInputStream fi = new

FileInputStream(files[i]); // 创建文件读取流,读取当前循环到的文件

origin = new

BufferedInputStream(fi, BUFFER); // 把文件流放入带有缓冲区的inputstream,并指定缓冲区大小

ZipEntry entry = newZipEntry(files[i]); // 创建zip压缩入口实例化,放入当前循环到的文件

out.putNextEntry(entry); // 输出流中放入压缩的文件

int count;

while((count =origin.read(data, 0,

BUFFER)) != -1) {// 当count值等于缓冲区读取的数据字节大小,且不等于-1

out.write(data, 0,count); // 输出流写入count字节大小的数据

}

origin.close();// 关闭带有缓冲区的inputstream

}

out.close(); // 关闭输出流

System.out.println(“checksum:

“+checksum.getChecksum().getValue()); // 打印验证压缩文件的值到控制台

} catch(Exception e) { // 捕捉异常

e.printStackTrace(); // 打印异常信息

}

}

}

Java编程学习中从菜鸟开始应该掌握的知识点都哪些?

建议你先了解JAVA的面向对象思想.

刚刚开始学习的时候千万别用什么集成开发环境,比如说eclipse那样的的开发工具,直接用记事本或者是EditPlus或者是UltraEdit32等文本编辑器.那样你学习起来更快.自己学着怎么搭建开发环境.

如果是出学者的话建议你买本张孝祥的JAVA就业培训教程,讲得很清楚,注意学习集合类,IO等方面的知识,如果你要向J2ME方向发展的话就要学习SWING等方面的知识.

JAVA核心技术和JAVA编程思想都不太适合初级学者,因为我就是一个学法律转型学计算机的.在刚刚开始接触JAVA的时候我买了这两本书,根本看不懂是个什么意思.等到现在回头再看,真是受益非浅.

如果是要视频方面的知识的话建议你看马士兵的,因为张孝祥的基础视频讲得有点罗嗦.

祝你学习愉快!

我是JAVA菜鸟,刚学,希望帮忙下

1. 在Java程序中,通过类的定义只能实现_____单_____重继承,但通过接口的定义可以实现____多_____重继承关系。

2. Java中类成员的限定词有:_public,private,defult,Protected ____。其中,____public_______的限的范围最大。

3. JAVA 中的循环控制语句有___for______,__do-while____,___while____三种基本形式。

4. 在闰年的判断中满足 ( a ) 能被4整除,但不能被100整除;( b )能被4整除,又能被100整除,试用一个表达式表达:___(a)_if year%4==0 and year%100!=0____(b) if year%4==0 and year%100==0_______。

5. do-while 循环的基本条件结构:

[初始化部分]

do

{

循环体;

[ __循环条件____ ]

} while ( __终止条件_____ );

java 菜鸟初学者之super疑惑

1,java中的每个类构造的时候都会调用父类的无参构造

2,如果该父类没有无参构造,就必须在第一行用super(…)来调用父类的某个构造

3,这只是调用一个方法,并不构造一个对象

Java菜鸟学习编写第一个java程序HelloWorld

不管学哪门语言,第一个HelloWorld程序成功运行起来的时候,代表着你的学习已经跨进了一小步。做这个java实验之前,读者最少要在自己的电脑上安装好JDK(包括配置好环境变量),如果读者还不会安装JDK和配置环境变量可以看作者的另一遍经验。

编写并保存代码。打开记事本编写如图1所示代码,图1代码为(注意输入代码时输入法一定切换到英文输入状态下):

public class HelloWorld {

/**

* 输出一行字符串“Hello World!”

* @param args

*/

public static void main(String[] args) {

System.out.println(“Hello World!”);

}

}

在D盘建立一个JAVA文件夹用于保存代码,保存的时候一定要注意,如图2所示,“保存类型(T)”要选择“所有文件(*.*)”,“文件名(N)”一定要为 HelloWorld.java 。如图3所示,保存后到D:JAVA下检查下文件名是否正确,HelloWorld.java.txt,HelloWorld.txt都是错误的文件名。JAVA程序代码后缀为.java,文件名常常要求保持和类名一致。JAVA语言是严格区分大小写字母的,但是Windows的文件名却不区分大小写。

启动命令提示符并进入到D:JAVA文件夹。如图1所示,按下WIN+R键启动运行命令框,输入cmd命令后回车,就可以启动命令提示符窗口。然后在命令提示符窗口中输入下面命令进入D:JAVA目录:

D: 回车

cd JAVA 回车

调用编译指令javac把HelloWorld.java转换为字节码文件HelloWorld.class 。如下图所示,执行指令:

javac HelloWorld.java 回车

执行指令如果没提示什么信息就是最好的信息,这时检查JAVA文件夹就会发现多了一个.class文件,这就是字节码文件了。如果提示错误信息就要回过头检查了。首先检查JDK环境变量是否配置好,然后检查类名和文件名是否一致,再检查代码是否有用正文输入法输入等等。

运行程序。代码转换为.class 文件后就可以在JVM虚拟机下运行了。在命令提示符敲入命令:

java HelloWorld 回车

如图所示,回车后打印输出:

HelloWorld!

注意,这时实际上是运行HelloWorld.class,但是命令中并不用加后缀名。

分析第三步的伪编译原理。如图所示,.java后缀的是源代码,一个或者多个源代码要经过java编译器生产.class后缀的字节码。字节码是和平台无关的,和C语言编译生成平台相关的机器码是不一样的。机器码可以只能在对应的平台执行,字节码执行是平台无关的但是必须有解释器。

分析第四部JAVA程序的执行过程。图为.class文件被读取后进行解释为平台相关机器码执行的过程。和编译型语言(比如C)程序最大的不同是JAVA程序经过解释器转换为和平台相关的机器码才可执行,可见这个过程在执行过程中动态解释,而编译型语言(比如C)是在执行之前就编译成了和平台相关的机器码了。这也是JAVA语言可以“一次(伪)编译,到处运行”的重要原因。

菜鸟:刚学java,堆区,栈区,静态区,代码区,晕了!!!!!

程序运行时,我们最好对数据保存到什么地方做到心中有数。特别要注意的是内在的分配,有六个地方都可以保存数据:

1、 寄存器。这是最快的保存区域,因为它位于和其他所有保存方式不同的地方:处理器内部。然而,寄存器的数量十分有限,所以寄存器是根据需要由编译器分配。我们对此没有直接的控制权,也不可能在自己的程序里找到寄存器存在的任何踪迹。

2、 堆栈。驻留于常规RAM(随机访问存储器)区域。但可通过它的“堆栈指针”获得处理的直接支持。堆栈指针若向下移,会创建新的内存;若向上移,则会释放那些内存。这是一种特别快、特别有效的数据保存方式,仅次于寄存器。创建程序时,java编译器必须准确地知道堆栈内保存的所有数据的“长度”以及“存在时间”。这是由于它必须生成相应的代码,以便向上和向下移动指针。这一限制无疑影响了程序的灵活性,所以尽管有些java数据要保存在堆栈里——特别是对象句柄,但java对象并不放到其中。

3、 堆。一种常规用途的内存池(也在RAM区域),其中保存了java对象。和堆栈不同:“内存堆”或“堆”最吸引人的地方在于编译器不必知道要从堆里分配多少存储空间,也不必知道存储的数据要在堆里停留多长的时间。因此,用堆保存数据时会得到更大的灵活性。要求创建一个对象时,只需用new命令编制相碰的代码即可。执行这些代码时,会在堆里自动进行数据的保存。当然,为达到这种灵活性,必然会付出一定的代价:在堆里分配存储空间时会花掉更长的时间

4、 静态存储。这儿的“静态”是指“位于固定位置”。程序运行期间,静态存储的数据将随时等候调用。可用static关键字指出一个对象的特定元素是静态的。但java对象本身永远都不会置入静态存储空间。

5、 常数存储。常数值通常直接置于程序代码内部。这样做是安全的。因为它们永远都不会改变,有的常数需要严格地保护,所以可考虑将它们置入只读存储器(ROM)。

6、 非RAM存储。若数据完全独立于一个程序之外,则程序不运行时仍可存在,并在程序的控制范围之外。其中两个最主要的例子便是“流式对象”和“固定对象”。对于流式对象,对象会变成字节流,通常会发给另一台机器,而对于固定对象,对象保存在磁盘中。即使程序中止运行,它们仍可保持自己的状态不变。对于这些类型的数据存储,一个特别有用的技艺就是它们能存在于其他媒体中,一旦需要,甚至能将它们恢复成普通的、基于RAM的对象。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/191020.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-11-30 09:08
下一篇 2024-11-30 09:08

相关推荐

  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • Python简单数学计算

    本文将从多个方面介绍Python的简单数学计算,包括基础运算符、函数、库以及实际应用场景。 一、基础运算符 Python提供了基础的算术运算符,包括加(+)、减(-)、乘(*)、除…

    编程 2025-04-29
  • Python满天星代码:让编程变得更加简单

    本文将从多个方面详细阐述Python满天星代码,为大家介绍它的优点以及如何在编程中使用。无论是刚刚接触编程还是资深程序员,都能从中获得一定的收获。 一、简介 Python满天星代码…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29

发表回复

登录后才能评论