//源程序 Hello.java
public class Hello
{
static String str ="Hello World";
public static void main(String args[])
{
System.out.println(str);
}
}

通过这个一个简单的方法可以看到一些JAVA的基本结构。(这些是借鉴前辈们的一些理解做下记录)

1、在java中一切都是对象,数据和函数必须封装在‘类’中。一个源文件至少包含一个类(Hello)才可以编译并执行。

2、用关键字class来声明一个类,本例中类名是Hello,源程序文件名必须和类同名,即用Hello.java存盘。

3、java语言是大小写敏感的,按惯例,类名用大写字母开头,变量、方法和对象实例名用小写开头。

4、类声明语句后面的{.............} 内的语法成为类体,他可以包括若干数据变量和函数。

5、在java中,数据变量被成为类的“成员变量”,或简称成员;函数在java中叫做类的“成员方法”:

a、本例中类Hello包括一个成员变量str和一个成员方法main;

b、成员str是一个string类对象;

6、应用程序Application主类中必须包含main()方法:

a、main方法前的修饰符一次表示该方法是公共的(public)、静态的(static)、无返回值的(void)。main方法必须用这三个修饰符;

b、java程序中可以定义多个类,每个类可以定义多个方法,但是一个.JAVA 文件,最多只有一个公共类(public),main()方法也只能有一个,作为程序的入口,可调用其他成员方法。

c、main()方法定义中的,括号()中的String args[] 是传递给main()方法的参数,参数名为args,它是类 String的一个对象,参数可以为0个或者多个。

7、main()方法中只有以一条语句System.out.println(str),功能是在标准输出设备(屏幕)上输出字符串str。

8、每条语句有分号结束;类体、方法和语句块用花括号;

(下面是自己简单结合eclipse对java工程管理的一些理解,随便写的。。很不规范,后续会在做详细的配图补充)

用eclipse新建一个工程后,在一个包里面的多个类,编译生成的  .class 文件在同一个文件夹里面。

class文件目录 C:\Users\qq\Desktop\rr\test\bin\test

java文件 目录 C:\Users\qq\Desktop\rr\test\src\test

每一个包,会单独生成一个文件夹。每个包里面的所有的类,都会在该包所在的文件夹的目录下。

目前理解的程序内上下级关系是:工程->源代码文件、各类标准库->各种包(package)->各种带有主函数的类名->细分的一些类

文件目录是  程序文件夹->bin文件夹(放的是按包来区分的文件夹->每个包里面的类生成的class文件,同一个包里面不允许有相同类名出现)、src文件夹(放的是按包来区分的文件夹->每个包里面类的java文件,即源代码)

基本数据类型:

在JAVA中一共有八种基本数据类型
byte、short、int、long、float、double、char、boolean 
整型 
其中byte、short、int、long都是表示整数的,只不过他们的取值范围不一样 
byte的取值范围为-128~127,占用1个字节(-2的7次方到2的7次方-1) 
short的取值范围为-32768~32767,占用2个字节(-2的15次方到2的15次方-1) 
int的取值范围为(-2147483648~2147483647),占用4个字节(-2的31次方到2的31次方-1) 
long的取值范围为(-9223372036854774808~9223372036854774807),占用8个字节(-2的63次方到2的63次方-1)

浮点型

float和double是表示浮点型的数据类型,他们之间的区别在于他们的精确度不同 
float 3.402823e+38 ~ 1.401298e-45(e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方)占用4个字节 
double 1.797693e+308~ 4.9000000e-324 占用8个字节 

boolean型(布尔型) 
这个类型只有两个值,true和false(真和非真) 
boolean t = true; 
boolean f = false; 
char型(文本型) 
用于存放字符的数据类型,占用2个字节,采用unicode编码,它的前128字节编码与ASCII兼容 
字符的存储范围在\u0000~\uFFFF,在定义字符型的数据时候要注意加' ',比如 '1'表示字符'1'而不是数值1, 

数据类型转换:

容量小的类型可以自动转到容量大的数据类型

byte->short->int->long->float->double

容量大的类型转容量小的类型时需要强制转换,并且会丢失数据精准度,有两种方法(尽量使用第二种方法转换);

①  double a = 1.2;  int b = (int)a;

② double a = 1.2; int b =  (new Double(a)).intValue();

JAVA的程序基本结构和数据类型的更多相关文章

  1. Java核心技术卷一基础知识-第3章-Java的基本程序设计结构-读书笔记

    第3章 Java的基本程序设计结构 本章内容: 一个简单的Java应用程序 字符串 注释 输入输出 数据类型 控制流 变量 大数值 运算符 数组 本章主要讲述程序设计相关的基本概念(如数据类型.分支以 ...

  2. java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组; 《java核心技术卷i》 第三章:java基本程序结构;

    <java核心技术卷i> 第三章:java基本程序结构: 每次看书,去总结的时候,总会发现一些新的东西,这次对于java的数组有了更深的了解: java中的数据类型,运算符,字符串,输入输 ...

  3. [二]Java虚拟机 jvm内存结构 运行时数据内存 class文件与jvm内存结构的映射 jvm数据类型 虚拟机栈 方法区 堆 含义

    前言简介 class文件是源代码经过编译后的一种平台中立的格式 里面包含了虚拟机运行所需要的所有信息,相当于 JVM的机器语言 JVM全称是Java Virtual Machine  ,既然是虚拟机, ...

  4. 《JAVA核心卷I》之Java基本程序结构

    Java基本程序结构 1.类名是以大写字母开头的名词代码能够执行的类,要有main函数,且声明必须是public 2.注释:  “//”,"/**/" 行注释  "/** ...

  5. Java程序的结构和执行

    目录 Java程序的结构 Java程序的执行 source code -- compiler -- class file -- JVM compiler JVM Java语法 数据类型 数据的存储 堆 ...

  6. 黑马程序员——JAVA基础之程序控制流结构之判断结构,选择结构

    ------- android培训.java培训.期待与您交流! ---------- 程序控制流结构:顺序结构:判断结构:选择结构:循环结构. 判断结构:条件表达式无论写成什么样子,只看最终的结构是 ...

  7. Java基础-程序流程控制第二弹(循环结构)

    Java基础-程序流程控制第二弹(循环结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 流程控制有三种基本结构:顺序结构,选择结构和循环结构.一个脚本就是顺序结构执行的,选择结 ...

  8. Java基础-程序流程控制第一弹(分支结构/选择结构)

    Java基础-程序流程控制第一弹(分支结构/选择结构) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.if语句 1>.if语句的第一种格式 if(条件表达式){ 语句体: ...

  9. 004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构

    004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构 Java程序的结构 Java程序外层--类 程序外层,如下面的代码,是一个类的定义. c ...

随机推荐

  1. idea创建vue项目,Terminal安装npm的淘宝镜像:'npm' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

    原因: 安装node.js时,不是默认路径安装,环境变量找不到npm,需要改环境变量配置: 原下: 找到安装node.js的安装路径: 改后: 成功: npm i -g cnpm --registry ...

  2. B - School Marks

    Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Description Little ...

  3. 前端开发利器 Sublime Text 3 使用技巧和总结笔记

    这篇文章是本人在使用该工具进行前端开发的自我总结,思路也许不是很清楚,不过还是希望对读者的你有所帮助,千万别把这边文章收藏起来发霉哦,无论背多少次快捷键,还不及自己多实际操作几次. 目前官方版正式版 ...

  4. 201621123016 《Java程序设计》第十二周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 面向系统综合设计-图书馆管理系统或购物车 使用流与文件改造你的图书馆管理系统或购物车. 2.1 简述如何 ...

  5. POJ3715【二分匹配-增广】

    题意: N个人,有两种人,M对亲密关系,问最少删除几个人达到没有亲密关系. 思路: 最大匹配 = 最小独立集,删掉该人对最大匹配数的影响,如果没有影响,删不删都无所谓,如果有影响贼删除: 类似HDU1 ...

  6. 一个高效的A-star寻路算法(八方向)(

    这种写法比较垃圾,表现在每次搜索一个点要遍历整个地图那么大的数组,如果地图为256*256,每次搜索都要执行65535次,如果遍历多个点就是n*65535,速度上实在是太垃圾了 简单说下思路,以后补充 ...

  7. Optimized fragmentation improves the identification of peptides cross-linked by MS-cleavable reagents (文献分享一组-张宇星)

    题目:Optimized fragmentation improves the identification of peptides cross-linked by MS-cleavable reag ...

  8. 织梦cms 应急响应 修复建议

    通过分析log日志,可以知道攻击者的IP 攻击时间 和具体操作 本片文章为内网测试,通过分析日志,进行复现攻击流程,同时对网站的后门给予修复建议 通过分析日志可以知道,攻击者使用了扫描工具进行网站扫描 ...

  9. ZooKeeper-3.3.4集群安装配置(转载)

    ZooKeeper是一个分布式开源框架,提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务——分布式同步(Distributed Synchronization).命名服务(Naming S ...

  10. 黑马tomact学习二 tomcat的启动